2

Ich benutze das DrawerLayout mit der v7-Symbolleiste, und ich möchte das Hamburger-Symbol in der Hauptaktivität und das Zurück-Symbol anzeigen in den Kinderaktivitäten.Navigationsschublade: Das Zurück-Symbol kann nicht anstelle des Hamburger-Symbols in der Symbolleiste der Kinderaktivitäten angezeigt werden.

Ich kann das nicht, das Hamburger-Icon wird immer angezeigt, auch in den Kinderaktivitäten.

Ich suchte bereits auf so ohne Erfolg (wenn ich einige nützliche Fragen verloren habe, entschuldige ich mich).

Dies ist das Android-Manifest:

<activity android:name=".activities.MainActivity"></activity> 
<activity 
    android:name=".activities.BuyActivity" 
    android:windowSoftInputMode="adjustResize" 
    android:parentActivityName=".activities.MainActivity"> 
    <meta-data 
    android:name="android.support.PARENT_ACTIVITY" 
    android:value=".activities.MainActivity" /> 
</activity> 

Dies ist der Aktivitätscode (der BaseActivity ist die Super für die Eltern und Kinder-Aktivitäten):

public class BaseActivity extends AppCompatActivity implements NavigationDrawerFragment.NavigationDrawerCallbacks { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(R.layout.activity_buy); 

     toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 

     getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_menu_white_24dp); 
     getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
     getSupportActionBar().setHomeButtonEnabled(true); 

     actionBarDrawerToggle = new ActionBarDrawerToggle(this, drawerLayout, toolbar, R.string.app_name, R.string.app_name); 
     drawerLayout.addDrawerListener(actionBarDrawerToggle); 
     getSupportActionBar().setDisplayShowTitleEnabled(false); 

     mNavigationDrawerFragment = (NavigationDrawerFragment) 
     getSupportFragmentManager().findFragmentById(R.id.navigation_drawer); 
     mTitle = getTitle(); 

     // Set up the drawer. 
     mNavigationDrawerFragment.setUp(
      R.id.navigation_drawer, 
      (DrawerLayout) findViewById(R.id.drawer_layout)); 
    } 

} 

Dies ist der Teil des Layouts der Symbolleiste:

<android.support.v7.widget.Toolbar 
    android:id="@+id/toolbar" 
    android:layout_height="?attr/actionBarSize" 
    android:layout_width="match_parent" 
    android:minHeight="?attr/actionBarSize" 
    local:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    android:background="?attr/colorPrimary"> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:id="@+id/txtTitle" 
     android:textColor="@android:color/white" 
     android:text="@string/title_buy" 
     android:textAppearance="@android:style/TextAppearance.Large" /> 
    <ImageView 
     android:layout_width="@dimen/toolbar_image" 
     android:layout_height="@dimen/toolbar_image" 
     android:src="@drawable/done" 
     android:background="@drawable/bg_border_white_l" 
     android:layout_marginRight="@dimen/toolbar_margin_right" 
     android:layout_marginEnd="@dimen/toolbar_margin_right" 
     android:contentDescription="@string/app_name" 
     android:layout_gravity="end" 
     android:id="@+id/imgDone" /> 
</android.support.v7.widget.Toolbar> 

ich habe versucht:

  • kontrolliert die korrekte android.support.v7.app.ActionBarDrawerToggle

Ich weiß nicht, zu importieren, was ich falsch mache.

+0

Wenn die untergeordneten Aktivitäten über Schubladen verfügen, die mit Umschaltern bedient werden können, ist es nicht wirklich sinnvoll, wenn sie ständig Pfeile anzeigen. –

+0

Schwer zu sagen, was Sie gerade versuchen, aber das könnte helfen: http://stackoverflow.com/questions/34025331/how-can-i-control-the-activities-up-button-froma-a- contained-fragment –

Antwort

1

In Kinderaktivitäten sollten Sie nicht ActionBarDrawerToggle hinzufügen, da dies ein Hamburger-Icon setzt. Verschieben Sie stattdessen die ActionBarDrawerToggle in die Hauptaktivität.

+0

Danke, das hat das Problem fast gelöst. Ich musste die Zeile "setHomeAsUpIndicator" entweder in der Hauptaktivität setzen. –

+0

Vielen Dank dafür, so viel Zeit damit verbracht, dies herauszufinden. – CFJ90210