Добавление подпредставления в подпредставление из другого метода

Позвольте мне начать с описания моей ситуации. У меня есть основное представление, в которое я хочу поместить меньшее подпредставление прокрутки. Затем, позже в коде (другим методом), мне нравится добавлять некоторые подпредставления (изображения и текстовые представления) в это подпредставление прокрутки. И, возможно, даже удалите изображения и текстовые подпредставления позже (еще одним методом). Таким образом, subviews изображения и текста в конечном итоге стали частью subview основного вида.

Это легко сделать, если все происходит внутри одного метода. Но я не могу добавить подпредставление 3-го поколения ко второму подпредставлению из другого метода. Можно было ожидать чего-то вроде:

[self.view.scrollviewSubview addSubview:anotherSubview];

Как настроить таргетинг на scrollview-subview, размещенный как subview в главном представлении. Надеюсь, мой вопрос имеет смысл, его действительно сложно описать в тексте.


person John Kofod    schedule 23.09.2010    source источник


Ответы (1)


Не уверен, что понял ^^

Но если ваша проблема заключается в доступе к подпредставлению, на которое у вас нет указателя, возможно, вы могли бы установить тег для своего подпредставления.

[ view setTag:9000 ];

Позже в коде вы можете искать это представление с помощью:

[ view viewWithTag:9000 ]

Не забывайте, что с viewWithTag вы получите класс UIView. Поэтому, если вам нужно получить конкретный класс, вы должны использовать его как

(MyViewSubclassed*)[ view viewWithTag:9000 ]

Удачи !

person Vinzius    schedule 23.09.2010
comment
Конечно, это не самый красивый способ, но он работает хорошо. Спасибо. Кстати, вы говорите о «доступе к подпредставлению, на которое у вас нет указателя». Как мне навести на него указатель? Это немного лучшее решение. - person John Kofod; 24.09.2010
comment
Это зависит от вашей диаграммы классов ^^ Не могли бы вы составить схему своих классов, и, возможно, мы могли бы помочь вам сделать что-то лучше ;-) - person Vinzius; 24.09.2010
comment
Могу ли я заставить Xcode распечатать схему моего текущего проекта? - person John Kofod; 25.09.2010
comment
Это небольшой проектный банкомат. Конечно, appDelegate, mainViewController, где все происходит, и FlipsideViewController возвращает отредактированную строку в mainViewController для отображения. Простой... - person John Kofod; 25.09.2010
comment
Возможно, вы могли бы объявить свой UISCrolLView как класс var. В .h файла, где вам нужно добавить подпредставление в uiscrollview, объявите UIScrollview * myCrollView; При его создании используйте myCrollView, а потом у вас будет указатель на myCrollView. Может быть, если вы дадите нам код, это будет проще ^^ - person Vinzius; 25.09.2010