#android #xml #triggers
#Android #xml #триггеры
Вопрос:
У меня есть 2 XML-файла в моем приложении для Android. И хотите сделать это: examplebuttononthesecondXML.setText("12");
с помощью кнопки на втором XML.
Сначала, как должно работать мое приложение:
- Существует текстовое поле, в которое вы можете вставить текст
- Нажав кнопку Сохранить, откроется диалоговое окно с 10 кнопками.
- Каждая кнопка имеет номер.
- С помощью кнопок вы должны ввести свой пароль.
- Затем вы можете нажать Ok. И все сохраняется.
Каждый раз, когда открывается диалоговое окно, номера кнопок должны отображаться в другом порядке!(для большей безопасности).
единственная проблема заключается в том, как получить доступ к моему второму XML-файлу.
// b1 = button on the second XML;
// buttons = Name of the secnond XML;
// testb = Name of the Button Variable which has access to b1;
setContentView(R.layout.buttons);
Button testb = (Button) this.findViewById(R.id.b1);
testb.setText("showme");
Вышеуказанное не работает, вместо этого происходит сбой моего приложения!!
причина в setcontentview!
может быть, у вас есть идея: D
Спасибо!
Ответ №1:
вы могли LayoutInflator
бы получить доступ к этому xml
файлу, просто следуя этому примеру кода
LayoutInflater layoutInflater
= (LayoutInflater)getBaseContext()
.getSystemService(LAYOUT_INFLATER_SERVICE);
затем
LinearLayout myOtherLayoutMainLinearLayout = (LinearLayout) layoutInflater.inflate(R.layout.tool_box, null);
или просто используйте View для доступа к этому XML
файлу
View myOtherLayoutMainLinearLayout = (View)layoutInflater.inflate(R.layout.tool_box, null);
и для доступа к кнопке просто
Button myOtherXMLButton = (Button)myOtherLayoutMainLinearLayout.findViewById(R.id.tool_box);
myOtherXMLButton.setText("xxxx");
Ответ №2:
View myOtherLayoutMainLinearLayout = (View)layoutInflater.inflate(R.layout.bbb, null);
Button myOtherXMLButton = (Button)myOtherLayoutMainLinearLayout.findViewById(R.id.button1);
myOtherXMLButton.setText("xxxx");
setupButton();
хорошо, это больше не вызывает сбоев: D
но после того, как я открыл свой диалог, номер на моей кнопке1 остался прежним…