在Android中,设置colorPrimary
有多种方法,以下是其中两种常见的方法:
在styles.xml
文件中设置:
在res/values/styles.xml
文件中,找到或创建一个应用主题(通常是AppTheme
),然后设置colorPrimary
属性。例如:
<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- 设置colorPrimary -->
<item name="colorPrimary">@color/colorPrimary</item>
<!-- 设置colorPrimaryDark -->
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<!-- 设置colorAccent -->
<item name="colorAccent">@color/colorAccent</item>
</style>
</resources>
在这个例子中,@color/colorPrimary
是颜色资源的引用,你需要在res/values/colors.xml
文件中定义它:
<resources>
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#303F9F</color>
<color name="colorAccent">#FF4081</color>
</resources>
在Java或Kotlin代码中设置:
在Activity的onCreate()
方法中,可以通过ActionBar
对象设置colorPrimary
。例如,在Java中:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取ActionBar对象
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
// 设置colorPrimary
actionBar.setBackgroundDrawable(ContextCompat.getColorStateList(this, R.color.colorPrimary));
}
}
在Kotlin中:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// 获取ActionBar对象
val actionBar = supportActionBar
if (actionBar != null) {
// 设置colorPrimary
actionBar.setBackgroundDrawable(ContextCompat.getColorStateList(this, R.color.colorPrimary))
}
}
同样,@color/colorPrimary
是颜色资源的引用,你需要在res/values/colors.xml
文件中定义它。