2010-04-05 4 views
1

Я использую hierarchyviewer для просмотра виджета, который я использую. (TimePicker).Android - доступ к элементу в виджетах

Теперь я вижу, что TimePicker содержит id/декремент, id/increment и id/timepicker_input.

Как получить ссылку на id/timepicker_input, например?

Tried my_picker.findViewWithTag ("декремент"); но это возвращает null.

Спасибо, Tee

+0

Что еще вы пробовали? Вы пробовали my_picker.findViewById? – Pentium10

ответ

0

Я не вижу эти идентификаторы на макете TimePicker

http://www.google.com/codesearch/p?hl=en#uX1GffpyOZk/core/res/res/layout/time_picker.xml

Я вижу их на NumberPicker, который используется TimePicker

http://www.google.com/codesearch/p?hl=en#uX1GffpyOZk/core/res/res/layout/number_picker.xml

Вам нужно будет найти соответствующий вид NumberPicker, затем найдите представление NumberPickerButton.

Однако у вас есть две проблемы. 1. Вы не можете получить идентификаторы, потому что они не отображаются (вы будете смотреть на android.R.id.decrement и т. Д.) И 2. Это будет очень хрупким, потому что внутренняя реализация этих элементов управления будет изменение.

Если ваш проект будет иметь совместимую лицензию на Apache License версии 2.0, то вы можете скопировать все макеты и классы TimePicker и NumberPicker в свой собственный проект и настроить их там. Таким образом, у вас будет полный контроль, и он гораздо реже будет разорван с будущими ОС.

Смежные вопросы