Android 4 个片段操作栏未显示
Android 4 Fragment Action Bar Not Showing
我在相对布局中使用线性布局。因此,操作栏没有显示。它在 Android 5 和 6 上都工作正常。这个问题只出现在 Android 4 上。你能帮帮我吗?
<RelativeLayout 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"
tools:context="com.example.blabla">
<LinearLayout
android:paddingTop="60dp"
android:paddingLeft="@dimen/act_left"
android:paddingRight="10dp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:background="@color/background_gray_soft">
....
</LinearLayout>
</RelativeLayout>
对于那些在 ICS 中使用 FrameLayouts 和 Fragments 的人,不要用
改变你的背景
android:backgound="..."
它使工具栏颜色与您的背景相同。(我不知道为什么。仍在尝试弄清楚。)
您需要检查 Java 代码中的 API 版本并在那里设置背景颜色。
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
FrameLayout frameLayout = (FrameLayout) findViewById(R.id.fragment_container);
frameLayout.setBackgroundColor(getResources().getColor(R.color.background_gray_soft));
}
只剩下一个问题,用这个方法无法解决。
如果你想在ICS中有一个特殊的背景颜色(我只在Fragments上遇到过这个问题),你会如何设置?
我在相对布局中使用线性布局。因此,操作栏没有显示。它在 Android 5 和 6 上都工作正常。这个问题只出现在 Android 4 上。你能帮帮我吗?
<RelativeLayout 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"
tools:context="com.example.blabla">
<LinearLayout
android:paddingTop="60dp"
android:paddingLeft="@dimen/act_left"
android:paddingRight="10dp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:background="@color/background_gray_soft">
....
</LinearLayout>
</RelativeLayout>
对于那些在 ICS 中使用 FrameLayouts 和 Fragments 的人,不要用
改变你的背景android:backgound="..."
它使工具栏颜色与您的背景相同。(我不知道为什么。仍在尝试弄清楚。)
您需要检查 Java 代码中的 API 版本并在那里设置背景颜色。
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
FrameLayout frameLayout = (FrameLayout) findViewById(R.id.fragment_container);
frameLayout.setBackgroundColor(getResources().getColor(R.color.background_gray_soft));
}
只剩下一个问题,用这个方法无法解决。
如果你想在ICS中有一个特殊的背景颜色(我只在Fragments上遇到过这个问题),你会如何设置?