2011-06-19 21 views
0

В настоящее время у меня есть макет, который имеет scrollviewer в качестве основного макета, и относительный (с большим количеством просмотров) в качестве моего макета приложения, но теперь мне нужно сделать вкладки, в руководстве по Android указывается, фактический макет каждой вкладки программно, как мне преобразовать текущий макет (xml) в класс? Есть ли какие-либо ориентиры? как установить относительный макет внутри scrollviewer и как указать «android: layout_below =« SOMETHING »и все эти свойства?Преобразование макета в класс

ответ

0

Я не очень хорошо понимаю ваш вопрос, но при создании программы TabLayout вы определяете действия, которые используются для каждой из вкладок. Каждый из них должен иметь setContentView («деятельность макета»)

+0

Что я имел в виду, так это как преобразовать уже определенный XML-макет (тот, который имеет вложенные представления и виджеты) в класс, чтобы программно определить элементы управления каждой вкладкой. –

+0

Хм, просто создайте простую деятельность, которая содержит ваш XML-макет, а затем создайте вкладку, используя эту активность! 'code' intent = new Intent(). setClass (это, NEWACTIVITYCLASS.class); \t \t спецификации = tabHost \t \t \t \t .newTabSpec ("NAMEOFTAB") \t \t \t \t .setIndicator (res.getText (идентификатор текста), \t \t \t \t \t \t res.getDrawable (иконка)) \t \t \t \t .setContent (намерение); –

+0

Да, я знаю, но мой вопрос: мне нужно преобразовать вручную мой XML-макет, который мне alreadu должен быть NEWACTIVITYCLASS.class? или я могу указать в классе NEWACTIVITYCLASS.class, что макет - это фактический файл layout.xml, кроме основного, который содержит весь код tabhost. –

0

Для того, чтобы получить доступ к XML-элементов в Android вам нужно сделать что-то вроде следующего:

Button submitButton = (Button) myActivity.getViewById(R.id.btnSubmit); 

Тогда вы можете назвать такие вещи, как submitButton.setVisibility (View.HIDDEN), чтобы скрыть его или что-то еще, что вам нужно сделать.

Это должно работать для любых элементов компоновки.

Убедитесь, что вы сделали это в своем методе onActivityStart, иначе вы будете бросать исключения во время выполнения.

Нет никакого способа автоматически «преобразовать» файл макета XML в класс, если вы не используете какой-либо алгоритм синтаксического анализа XML, который звучит как путь больше, чем вы пытаетесь сделать.

Надеюсь, это помогло!

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