0

デフォルトで ActionBar を表示しないテーマを使用しています。

<style name="AppTheme" parent="Theme.AppCompat">
    <item name="windowActionBar">false</item>
    <item name="android:textColorPrimary">#FFFFFF</item>
</style>

ただし、xml のツールバーに置き換えています。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    ... >

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar_VenueDetail"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="@color/MainColor" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="300dp"
        android:background="@color/MainColor"
        android:elevation="@dimen/default_elevation"
        android:orientation="vertical">

    </LinearLayout>

</LinearLayout>

OnCreate で:

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

予想される結果は、フラットなツールバーと LinearLayout の下の影です。これは、まさに Android Studio のプレビューで表示されるものです。

Nexus 4 でプレビュー

ただし、実際には、ツールバーも有効になっています。

Nexus 5 のスクリーンショット

影を別のビューの下に置き、ツールバーを平らに保ちたいのですが、これを達成するにはどうすればよいですか? これは可能ですか?

4

1 に答える 1

0

ツールバーをサポート アクションバーとして設定しないでください。ツールバーにナビゲーション ボタン、タイトル、インフレート メニューを引き続き設定できますが、コードまたはアクティビティ レイアウトで明示的に設定しない限り、昇格は適用されません。

そうは言っても、エレベーションの削除がマテリアル デザインの原則に反しないことを確認してください。

于 2015-05-04T14:39:57.337 に答える