2016-07-21 15 views
0

Ich fühle mich dumm zu fragen, aber ich verbringe wahrscheinlich 6 Stunden gerade versuchen, dies herauszufinden. Ich kann nicht meine Symbolleiste bekommen überhaupt in der App zu zeigen - wie folgt umgesetzt:Toolbar nicht in App angezeigt

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:id="@+id/main_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    tools:context="de.gymnasium_beetzendorf.vertretungsplan.MainActivity"> 

    <android.support.design.widget.AppBarLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:theme="@style/AppTheme.AppBarOverlay"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/mainToolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:background="?attr/colorPrimary" 
      app:popupTheme="@style/AppTheme.PopupOverlay" /> 

    </android.support.design.widget.AppBarLayout> 

</android.support.design.widget.CoordinatorLayout> 

mein MainActivity Code, sieht nun wie:

Toolbar mToolbar = (Toolbar) findViewById(R.id.mainToolbar); 
setSupportActionBar(mToolbar); 

Meine style.xml sieht wie folgt aus (die zu einem style.xml identisch ist, die Android Studio erstellt, wenn eine Anwendung mit einer leeren Aktivität erstellen):

<resources> 
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
     <item name="colorPrimary">@color/colorPrimary</item> 
     <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
     <item name="colorAccent">@color/colorAccent</item> 
     <item name="windowActionBar">false</item> 
     <item name="windowNoTitle">true</item> 
    </style> 

    <style name="AppTheme.NoActionBar"> 
     <item name="windowActionBar">false</item> 
     <item name="windowNoTitle">true</item> 
    </style> 

    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" /> 

    <style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" /> 

</resources> 

Das einzige, was ich muss hinzufügen, sind die letzten beiden Punkte (windowActio nBar, windowNoTitle), da sonst die App beim Ausführen abstürzt.

Eine Sache, die mir aufgefallen ist, die hilfreich für andere sein könnte (sie sind nicht für mich): Wenn ich mToolbar == null überprüfe, gibt es wahr - weiß nicht warum. Der Aufruf erfolgt nach setContentView.

Manifest wie gewünscht (I links heraus alle anderen Aktivitäten):

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="de.gymnasium_beetzendorf.vertretungsplan"> 

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="com.android.vending.BILLING" /> 
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
    <uses-permission android:name="com.android.alarm.permission.SET_ALARM" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme"> 
     <activity 
      android:name=".MainActivity" 
     android:configChanges="keyboardHidden|orientation|screenSize"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 


    </application> 

</manifest> 

Jede Idee, was ich falsch hier? Es sieht ziemlich Standard aus, aber ich kann nicht herausfinden, was es ist. Hilfe wird sehr geschätzt!

+0

können Sie das Manifest auch @Crosswind sehen –

+0

vergaß darüber, bearbeitet den Beitrag @SalvatoryBaya – Crosswind

+0

ist Ihr Code auf GitHub? Ich kann dir helfen zu debuggen. Aufgrund der bereitgestellten Informationen kann ich noch immer kein Problem finden. –

Antwort

5

Ich habe Ihren Code bei GitHub überprüft.

Sie haben die Datei layout-v21 \ activity_main.xml. Diese Datei hat keine Symbolleiste. Wenn Sie die App auf Geräten mit Android 5.0 oder höher testen, wird die Symbolleiste nicht angezeigt. Sie müssen die Symbolleiste auch zu dieser Aktivität hinzufügen, um sie auf allen Geräten anzuzeigen.

+0

@Crosswind Alexey hat Recht, das ist, was ich selbst bemerkt habe. Ich wollte die Antwort posten –

+0

Okay, keine Ahnung, warum das da war. Danke Leute! – Crosswind

Verwandte Themen