在以下布局中
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
<TextView
android:id="@+id/name"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
TextView
未在pre-L设备上使用主题文字颜色。如果我将此主题声明移动到TextView,它适用于所有设备。 Chris Banes在他的文章中写道:
在22.1.0中,我们现在已经扩展了该功能,以便您可以进行设置 布局中任何视图的主题。 https://chris.banes.me/2015/04/22/support-libraries-v22-1-0/
所以我很困惑,bug?
修改:
我查看工具栏和工具栏似乎也有这个问题 - 以下布局也没有按预期工作:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<TextView
android:layout_width="wrap_content"
android:text="#@#@SDAG"
android:layout_height="wrap_content" />
</android.support.v7.widget.Toolbar>
答案 0 :(得分:0)
我找到了问题的根源。我直接在R.id.content中添加了项目。与LayoutInflater.from(this).inflate(R.layout.my_activity, findViewById(R.id.content);
类似,而不是使用setContentView
方法完成所有神奇的工作。遗憾的是,在文档中没有必须使用setContentXXX
方法。
答案 1 :(得分:-1)
对于支持lib的新版本(v22.1),您的活动应该扩展ActionBarActivity
,而不是您过去延长的{{1}}。
以下是Google开发者的帖子:http://android-developers.blogspot.com/2015/04/android-support-library-221.html