2010-09-07 4 views
0

Я расширяюсь на мировом приложении привет. Я создал кнопку на main.xml, чтобы открыть новую форму, screen2.xml, со второй кнопкой. Я бы хотел, чтобы эта кнопка нажала на сообщение. Однако, как только я попытаюсь добавить код для определения OnClickListener, я получаю сообщение о силе. Это происходит в этой строке кода:Android - Не удается получить доступ к кнопке на другом макете

final Button btnShowToast = (Button) findViewById(R.id.btnShowToast) 

Означает ли это, что одно действие может иметь доступ только к одному экрану/макету?

Также, в строке выше, что означает «окончательный»?

ответ

2

Означает ли это, что одно действие может иметь доступ только к одному экрану/макету?

Да, вы можете ссылаться только виджеты, которые являются частью текущей раскладке вашей деятельности.

Кроме того, в строке выше, что означает "окончательное" означает?

final является Java зарезервировано ключевое слово, которое имеет несколько различных значений в зависимости от контекста. В этом случае это означает, что вы не можете назначить другую ссылку на кнопку. Например, вы не можете сделать это после этой строки:

btnShowToast = (Button) findViewById(R.id.anotherButton); 

В других контекстах это просто означает: «это не может быть изменен» и используется для определения констант.

Я создал кнопку на main.xml, чтобы открыть новую форму, screen2.xml, со второй кнопкой. Я бы хотел, чтобы эта кнопка нажала на сообщение.

В этом случае, это то, что вам нужно сделать:

  • Для первой кнопки, установите OnClickListener, который открывает ваш второй Activity.
  • Ваш второй Acticity будет использовать screen2.xml
  • Из вашего второго Activity, установите OnClickListener на свою вторую кнопку, тосты сообщения.
+0

Спасибо Кристиану, что делает вещи совершенно ясными. –

+0

У меня проблемы с определением моего второго действия. Как это можно сделать? Кроме того, как «активировать» вторую активность, где она есть. Еще раз спасибо. –

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