Ändern AppBarLayout Höhe programmgesteuert in Android

Ich versuche, die Anwendung Flexibler Raum mit Bild-Muster, mit dieses tutorial.

Alles funktioniert einwandfrei.

Beachten Sie die Höhe definition der AppBarLayout die 192dp.

Ich würde gerne die Höhe 1/3 des Bildschirms statt, zu entsprechen das google-Beispiel für das Muster hier.

Hier ist der code in der activity onCreate (die layout-xml ist genau das gleiche wie im tutorial):

AppBarLayout appbar = (AppBarLayout)findViewById(R.id.appbar);
float density = getResources().getDisplayMetrics().density;
float heightDp = getResources().getDisplayMetrics().heightPixels / density;
appbar.setLayoutParams(new CoordinatorLayout.LayoutParams(LayoutParams.MATCH_PARENT, Math.round(heightDp / 3)));

Aber aus irgendeinem Grund, das Ergebnis ist nicht das, was ich erwarte. Ich kann nicht finden Sie in der app-Leiste auf alle mit diesem code. (ohne den code, die Höhe zeigt, wie erwartet, aber es ist aus XML und kann nicht dynamisch gesetzt werden).

InformationsquelleAutor Jjang | 2015-07-11
Schreibe einen Kommentar