программно Мне нужно получить доступ к внутренней TextView с помощью макета InflaterЗаданных значений для TextView в Toast
Суды hirarchy:
<relative layout id="rlRoot">
<relative layout>
<linear layout>
<linear layout>
<relative layout id="rlTv">
<textView id="tvOne">
Я хочу, чтобы динамически установить значение для tvOne ид через тост.
Logic Я ниже
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.test, (ViewGroup) findViewById(R.id.rlRoot));
TextView txtId = (TextView) layout.findViewById(R.id.tvOne);
txtId.setText("Id: " + getId());
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.FILL, 0, 0);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
Но это дает «вид не прилагается к оконному менеджеру». Я также изменил rlRoot на rlTv. Но такая же ошибка. Как получить доступ к этому вложенному текстовому виду?
Да, это не проблема с контекстом, я думаю. Фактически над этим textView у меня также есть кнопка, которую я установил для невидимого в коде после вызова функции setText на этом текстовом элементе. После того, как я установил inflater.inflate (R.layout.test, null), кажется, что теперь логика работает нормально. –