2016-06-22 14 views
3

enter image description hereEntwurf Tab in App Pausen für Android Nexus 4

das ist das Bild meiner App in nexus4 oberen Layout, in dem Sie gree Toggle einen Streifen wenig bekommt 4 von Bildschirm in nexus oben sehen können, aber wenn ich laufen Diese App in MotoE läuft es vry gut und keine Mängel in der Gestaltung Layout .. Was kann das Problem mit diesem Telefon sein?

+0

Haben Sie versucht, vor dem Posten hier zu suchen? –

+0

Ja Mann, aber keine Hilfe – Shikhar

+0

Fügen Sie Ihre Layout-Datei wo Tabs, App Bar, seine Gegenwart – Harshit

Antwort

1

Sie müssen android:fitsSystemWindows="false" zu Ihrem appBar/toolbar Layout verwenden.

Was passiert hier, da das Layout das Flag fehlt, versucht es, die Symbolleiste unter Statusleiste zu zeichnen, dh, es ist egal, System-Level-Einsätze (Statusleiste). Also müssen wir diese Zeile innerhalb des Layouts hinzufügen, das unter der Statusleiste gezeichnet werden muss.

Edit:

Sie android:fitsSystemWindows="true" zu den Top-Level-Layout-Elemente geben kann, wenn es unter statusbar gezogen werden muss. Wenn etwas unterhalb der Statusleiste angezeigt werden soll, verwenden Sie false.

+0

Dank Kumpel, aber das Problem ist ich auch mit einer inneren Registerkarte, wenn ich in inneren Registerkarte unteren Registerkarte schaltet nach unten :( – Shikhar

+0

können Sie das Layout veröffentlichen code –

+0

es passiert in nexus nur du hast gesagt fitssystemwindows = "true" oberes Layout wird jetzt nicht gehen, aber untere Tabs bewegen sich unterhalb der Navigationsleiste – Shikhar

0

Es ist vor allem ein Know Problem, so erstens gesetzt android:fitsSystemWindows="false" zum Stammlayout und dann nur Top-Polsterung hinzufügen, die Statusleiste Höhe auf Ihre tooblar gleich ist, wenn Android-Version> = Lollipop:

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
    toolbar.setPadding(toolbar.getPaddingLeft(), getStatusBarHeight(), toolbar.getPaddingRight(), toolbar.getPaddingBottom()); 
} 

protected int getStatusBarHeight() { 
    int result = 0; 
    int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android"); 
    if (resourceId > 0) { 
     result = getResources().getDimensionPixelSize(resourceId); 
    } 
    return result; 
} 

Das war's!