Android: переключение на другое действие с помощью события кнопки? - PullRequest
1 голос
/ 27 августа 2011

Я хочу изменить текущую активность на другую активность в Android с помощью кнопки.Однако всякий раз, когда я нажимаю кнопку, в перспективе отладки eclipse появляется ошибка «источник не найден».Это функция, которую я использую для изменения активности

public void toManager(){
    Intent i = new Intent(getApplicationContext(), DegreeActivity.class);
    startActivity(i);
}

В моем XML-файле кнопка имеет прослушиватель onClick.Это xml

<Button
    android:id="@+id/btn_toDegree"
    android:text="@string/btn_toDegree"
    android:textSize="13pt"
    android:layout_centerVertical="true"
    android:gravity="center"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:layout_marginLeft="15dip"
    android:layout_marginRight="15dip"
    android:onClick="toManager"  <!-- This line -->
    />  

Если я вызываю функцию toManager() в блоке onCreate() первого действия, оно переключается на следующее действие без ошибок.Однако, когда я пытаюсь переключиться с помощью кнопки, это не работает.

Ответы [ 2 ]

7 голосов
/ 27 августа 2011

Обработчик кликов должен выглядеть следующим образом:

public void toManager(View view) {
    Intent i = new Intent(getApplicationContext(), DegreeActivity.class);
    startActivity(i);
}

От Кнопка Документация:

Теперь, когда пользователь нажимает кнопку, система Android вызываетметод деятельности selfDestruct(View).Чтобы это работало, метод должен быть общедоступным и принимать View в качестве единственного параметра.

1 голос
/ 27 августа 2011

Пикси ответ правильный.

Кроме того, Android 1.5 или более ранние версии не могут использовать эту функцию в соответствии с этим вопросом событие нажатия кнопки android imagebutton в xml

...