Powiedz, że mam Format ASCII dla AutoLayout
:
V:|-20-[mybutton(>=70@500)]-[mylabel(==mybutton)]-30-[myimageview]-|
Muszę wyodrębnić wszystkie poglądy, to znaczy UIButton
, UILabel
i UIImageView
, Myślałem o użyciu NSScanner
, a logika jest jak:
- skanuj do
[
- skanuj do zestawu znaków, w tym
[
i(
- powtórz od początku do końca
String
Czy istnieje lepsze podejście?
Potrzebuję ciągów widoków w ograniczeniach, więc z powyższego przykładu potrzebuję tablicy:
@[@"mybutton", @"mylabel", @"myimageview"]
Przepraszamy za wprowadzające w błąd!
Odpowiedzi:
0 dla odpowiedzi № 1posługiwać się NSDictionary *views = NSDictionaryOfVariableBindings(view1, view2, view3);
który tworzy słownik, w którym klucze są nazwami zmiennych widoków, możesz wyodrębnić nazwy przez [views allKeys]