Intereting Posts
Как справиться с перетаскиванием в приложении для шахмат Android? Как изменить ветку git в Android Studio Android: Как сделать флип-анимацию для андроидной активности, как будто iphone flip горизонтально слева направо? Невозможно загрузить файл TTF непосредственно из ZIP с помощью libzip и FreeType Почему я получаю сообщения о java.lang.UnsatisfiedLinkError с рынка Меню переполнения Android, расположенное над панелью действий / панелью инструментов? Ошибка «Нет равных сертификатов» в Android 2.3, но НЕ в 4 Android. Эффективность анимации Android AccountManager addAccount throwing OperationCanceledException при обратном вызове Панель инструментов не будет разрушаться с помощью Scrollview в качестве дочернего элемента CoordinatorLayout Существующие тесты пользовательского интерфейса Android перестали работать после перехода на AndroidJUnitRunner Пользовательский интерфейс перемещается вверх при открытии клавиатуры Android: цвета фона AppTheme по умолчанию Allocation Tracker: как использовать его для обнаружения утечек памяти? Инициативная firebase с FirebaseOptions

Как получить кнопку для открытия другой активности в Android Studio?

Привет, я новичок в программировании, и я использую Android Studio для кодирования своего приложения для Android. Я работал с Eclipse но я пытаюсь что-то новое. Я добавил кнопку в my activity.XML файл my activity.XML и я не могу заставить ее открыть другое действие. Может кто-нибудь, пожалуйста, скажите мне шаг за шагом о том, как это сделать, пожалуйста?

Solutions Collecting From Web of "Как получить кнопку для открытия другой активности в Android Studio?"

A. Убедитесь, что ваша другая активность объявлена ​​в манифесте:

 <activity android:name="MyOtherActivity" android:label="@string/app_name"> </activity> 

Все действия должны быть объявлены в манифесте , даже если у них нет целевого фильтра, назначенного им.


B. В своей MainActivity сделайте что-то вроде этого:

 Button btn = (Button)findViewById(R.id.open_activity_button); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { startActivity(new Intent(MainActivity.this, MyOtherActivity.class)); } }); 

Использование OnClickListener

В onCreate() экземпляра вашей Activity вы должны сначала найти свою Button по своему id с помощью findViewById() а затем установить OnClickListener для своей кнопки и реализовать метод onClick() чтобы он начал новую Activity .

 Button yourButton = (Button) findViewById(R.id.your_buttons_id); yourButton.setOnClickListener(new OnClickListener(){ public void onClick(View v){ startActivity(new Intent(YourCurrentActivity.this, YourNewActivity.class)); } }); 

Вероятно, это самый предпочтительный метод для разработчиков. Однако существует общая альтернатива.

Использование onClick в XML

В качестве альтернативы вы можете использовать android:onClick="yourMethodName" чтобы объявить имя метода в своей Activity которое вызывается при нажатии на вашу Button , а затем объявите свой метод следующим образом;

 public void yourMethodName(View v){ startActivity(new Intent(YourCurrentActivity.this, YourNewActivity.class)); } 

Кроме того, не забудьте объявить свою новую Activity в вашем manifest.xml . Надеюсь, это поможет.

Рекомендации;

  • Запуск другой активности (официальное руководство по API)

Если вы указали свою кнопку в файле xml, подобном этому:

 <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="next activity" android:onClick="goToActivity2" /> 

То вы можете использовать его для изменения активности, помещая это в файл java:

 public void goToActivity2 (View view){ Intent intent = new Intent (this, Main2Activity.class); startActivity(intent); } 

Обратите внимание, что мое второе действие называется «Main2Activity»

 Button T=(Button)findViewById(R.id.button_timer); T.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent i=new Intent(getApplicationContext(),YOURACTIVITY.class); startActivity(i); } }); 

Public void onButtonClick (Просмотреть просмотр)

StartActivity (новый Intent (Current activity.this, IntentActivity.class));

Напишите код в файле xml.

 <Button android:width="wrap_content" android:height="wrap_content" android:id="@+id/button" android:text="Click"/> 

Введите код в свой java-файл

 Button button=(Button)findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { startActivity(new Intent(getApplicationContext(),Secondclass.class)); /* if you want to finish the first activity then just call finish(); */ } }); 

Примените следующие шаги:

  1. Вставить новый макет xml в макет папки
  2. Переименовать window2
  3. Добавьте новую кнопку и добавьте эту строку: android: onClick = "window2"

mainactivity.java

 public void openWindow2(View v) { //call window2 setContentView(R.layout.window2); } }