Android-App Programmierproblem

  • 10 Antworten
  • Letztes Antwortdatum
C

Code-champ

Neues Mitglied
0
Hallo Leute,

habe da ein kleines Problem beim programmieren meiner eigenen App. Bin noch Anfänger und finde keine Lösung für mein Problem. Habe schon ein bisschen rum probiert (Codeänderungen in den Layout-Files).
Das Problem ist, dass die Toolbar permanent im Vordergrund ist, auch wenn ich den Navigation-Drawer öffne. Die Toolbar liegt also über dem Drawer und man kann so einiges nicht lesen (und sieht natürlich auch eher gewöhnungsbedürftig aus ;) ).
Drawer und Toolbar sind dierekt von Android Studio erstellt wurden und ich habe sie nur zusammen gefügt.

Hier der Link zum Code (Android Studio 1.4): Coding-champ/Eigene-App-Problem · GitHub

Bedanke mich schon mal für die Hilfe. Vielleicht weiss einer von euch Rat :D

PS: Ich hoffe, ich bin im richtigen Forum :)
 
Hallo,

es wäre besser wenn du lieber hier die Codestellen direkt postest, die damit zusammenhängen. So bekommst du auch schneller eine Antwort
 
Da ich, wie auf dem screenshot zusehen, sehr viele layout Files habe, weiss ich nicht welche Codestellen ich hier posten soll. Habe die Dateien, die mir vllt wichtig erscheinen markiert. Ist wie gesagt vielcode in vielen Datein. Habe die vermutung, dass es an einer Zeile in der xml-datei "app_bar_navigation_drawer" liegt. Dort steht:

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

Der Code aus der styles.xml:
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />

Kann die letze Zeile mit dem AppBarOverlay etwas damit zutun haben?
Hoffe damit kann man was anfangen
 

Anhänge

  • screenshot android studio.png
    screenshot android studio.png
    48,1 KB · Aufrufe: 287
Zuletzt bearbeitet:
Kannst du dein Layoutfile mal posten wo die Toolbar drin ist?

Vllt hilft das Video:

Zu Themes kann ich leider nicht viel sagen aber der Name kommt schon sehr verdächtig vor :)
 
Zuletzt bearbeitet:
Das ist der Code meiner activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<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/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context=".MainActivity">

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

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

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

<include layout="@layout/content_main" />
<include layout="@layout/activity_navigation_drawer" />

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


Ist wie gesagt von Android Studio so erstellt worden.
 
Hier nochmal ein screenshot des Problems

Probleme bereitet der Eintrag bzw. der Tag "
android.support.design.widget.AppBarLayout", denn ohne ihn ist zwar das Design der Toolbar (Drawertoggle, Titel, Actiontoggle) weg, aber die Toolbar ist dann nicht mehr über derm Drawer.
 

Anhänge

  • Screenshot_2015-10-31-01-02-44.png
    Screenshot_2015-10-31-01-02-44.png
    28,9 KB · Aufrufe: 227
Zuletzt bearbeitet:
Hi,

da du wirklich alles sehr gut beschrieben hast, und auch ein GIT-Repos erstellt hast, möchte ich dir unbedingt helfen.

Ich habe ein wenig gegooglet und das gefunden:
How do I make DrawerLayout to display below the Toolbar?
Und: Material Design on Android Checklist | Android Developers Blog

Jetzt weiß ich nicht genau, wie du es haben willst. Ich habe die fitsSystemWindows auf false gesetzt. Jetzt ist es meiner Meinung nach hinter der Bar.
Leider passt die Höhe noch nicht ganz.

Möchtest du es sohaben wir hier?
drawerlayering.gif


Oder so wie hier?
Gtich.png


HTML:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
    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/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="false"
    tools:openDrawer="start">

    <include layout="@layout/app_bar_navigation_drawer"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="false"
        app:headerLayout="@layout/nav_header_navigation_drawer"
        app:menu="@menu/activity_navigation_drawer_drawer" />

</android.support.v4.widget.DrawerLayout>
 
Danke für die Antwort und Mühe (y)
Ich möchte es gerne so haben, wie in der Animation.
Ich gucke mir nach her mal die beiden seiten an.


Edit: Beide Seiten haben mir leider nicht weiter geholfen.

Habe jetzt auch mal aus der Navigation_Drawer.java alles was mit der Toolbar zu tuen hat entfernt - ohne Erfolg.

Zusätzlich habe ich den Code er activity_main.xml durch diesen ersetzt.
<LinearLayout
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/activity_main"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

<android.support.v7.widget.Toolbar
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:id="@+id/toolbar"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:minHeight="?attr/actionBarSize"
app:theme="@Style/AppTheme.AppBarOverlay"
app:popupTheme="@Style/AppTheme.PopupOverlay">

</android.support.v7.widget.Toolbar>

<FrameLayout
android:id="@+id/content_frame"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<include layout="@layout/content_main" />
<include layout="@layout/activity_navigation_drawer" />

</FrameLayout>

</LinearLayout>

Auf folgenden Screenshots ist das Ergebnis zusehen. Toolbar ist zu hoch und der Drawer geht trotz fitssystemwindow Eintrag nicht bis zur statusbar
 

Anhänge

  • Screenshot_2015-10-31-18-51-48.png
    Screenshot_2015-10-31-18-51-48.png
    35,6 KB · Aufrufe: 245
  • Screenshot_2015-10-31-18-51-53.png
    Screenshot_2015-10-31-18-51-53.png
    4,7 KB · Aufrufe: 252
Zuletzt bearbeitet:
Ich glaube ich habe es geschafft, was du haben wolltest.
Das wichtige ist, dass du die Toolbar in den navigation drawer packst und aus der main löscht.

hier die main:
HTML:
<?xml version="1.0" encoding="utf-8"?>

<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/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context=".MainActivity">



    <include layout="@layout/content_main" />
    <include layout="@layout/activity_navigation_drawer" />


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

Hier der drawer:
HTML:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
    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/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:openDrawer="start">

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


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

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="fill_parent"
            android:orientation="vertical"
            android:layout_below="@+id/toolbar">

            <View
                android:layout_width="match_parent"
                android:layout_height="fill_parent"
                android:background="@color/black_overlay"/>

        </LinearLayout>


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

    <include layout="@layout/app_bar_navigation_drawer"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_navigation_drawer"
        app:menu="@menu/activity_navigation_drawer_drawer" />

</android.support.v4.widget.DrawerLayout>

so sieht es bei mir jetzt aus:
device-2015-10-31-192834.png
 
  • Danke
Reaktionen: Jaiel und Code-champ
Vielen vielen Dank für die Mühe, die du dir gemacht hast. Funktioniert jetzt so, wie ich es haben wollte.
Ich hätte gedacht, dass bei dieser Lösung die Toolbar nicht angezeigt wird, aber du hast mich eines besseren belehrt ;)
 

Ähnliche Themen

K
Antworten
3
Aufrufe
973
mezzothunder
mezzothunder
M
Antworten
21
Aufrufe
1.358
swa00
swa00
Mr-Fisch
Antworten
5
Aufrufe
963
migi01
migi01
Mr-Fisch
Antworten
8
Aufrufe
1.005
Mr-Fisch
Mr-Fisch
M
Antworten
9
Aufrufe
788
mkuz24
M
Zurück
Oben Unten