Intereting Posts

Кнопка «Назад» в ActionBar в MainActivity

Я внедрил Back-Button для всех видов деятельности, кроме MainActivity . Моя проблема в том, что у меня есть Back-Button в этой MainActivity .

Надеюсь, я импортировал правильный класс:

  import android.support.v4.app.NavUtils; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getActionBar().setDisplayHomeAsUpEnabled(true); [...] } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); switch (item.getItemId()) { case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; case R.id.ueber: startActivity(new Intent(this, menu_main_Activity.class)); return true; } return super.onOptionsItemSelected(item); } 

AndroidManifest:

 <application android:allowBackup="true" android:icon="@mipmap/levox" android:label="@string/app_name" android:theme="@style/AppTheme"> <activity android:name=".ListViewActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".ListTasksActivity" android:label="@string/projekte" android:parentActivityName=".ListViewActivity"> </activity> <activity android:name=".ListSingleTaskActivity" android:label="@string/tasks" android:parentActivityName=".ListTasksActivity"> </activity> <activity android:name=".menu_main_Activity"/> </application> 

Почему я тоже получаю Back-Button от MainActivity ?

Solutions Collecting From Web of "Кнопка «Назад» в ActionBar в MainActivity"

Первый вопрос: что вы подразумеваете под «Back-Button»?

  • Вы имеете в виду кнопку, которая находится на каждом Android-устройстве в левом нижнем углу? Вы не можете отключить этот. Но он действительно называется « Back-Button » в Android-юниверсе. Иногда это даже часть аппаратного обеспечения!
  • Вы имеете в виду кнопку, которая показана маленькой стрелкой, направляющейся влево, рядом с иконкой приложения в левом верхнем углу приложения? Эта кнопка называется « Up-Button » в Android-юниверсе. Это показано в вашем MainActivity из-за этой строки в вашем коде:

     getActionBar().setDisplayHomeAsUpEnabled(true); 

    В методе

     protected void onCreate(Bundle savedInstanceState) 

    Поэтому вы должны отнять эту линию. Чтобы отключить не только внешний вид кнопки, но и ее функциональность , вы должны взглянуть на эту часть кода:

      switch (item.getItemId()) { case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; case R.id.ueber: startActivity(new Intent(this, menu_main_Activity.class)); return true; } 

    Здесь вам нужно удалить часть

     case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; 

EDIT: Но если вы действительно хотите, чтобы надпись «Up-Button» была видимой внутри Activity, вы

  • Необходимо установить код

     getActionBar().setDisplayHomeAsUpEnabled(true); 

    В методе onCreate () этой активности!

  • Предоставить родительскую активность в вашем Manifest.xml (что вы уже делаете), например:

     android:parentActivityName=".ListViewActivity" 
  • И положите часть

     case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; 

    В «Деятельность», которая должна иметь «Up-Button».

Если вы имеете в виду что-то еще, укажите свой вопрос и укажите больше кода 🙂

Некоторые полезные ссылки:

  • Чтобы узнать больше о внедрении «Up-Button», прочитайте « Навигационная система»
  • Чтобы узнать больше о различиях между «Вверх» и «Назад» в Android, прочитайте « Навигация» с помощью «Назад» и «Вверх»