/ / iOS autolayout: jak wyodrębnić wszystkie widoki z formatu ASCII? - ios, obiektyw-c, nsautolayout

iOS autolayout: jak wyodrębnić wszystkie widoki z formatu ASCII? - ios, obiektyw-c, nsautolayout

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:

  1. skanuj do [
  2. skanuj do zestawu znaków, w tym [ i (
  3. 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 № 1

posł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]