我使用Android Studio在Android的Guild App上写道。
这是我的问题,
在我的 MainActivity 中,标题颜色和菜单开启者为黑色:
在我的 SettingsActivity 中,Android Studio中的模板是标题颜色和箭头白色:
哪里可以编辑两者总是相同的颜色?
编辑1
@Sodiq
这是我的代码:
此处我的 settings_toolbar.xml :
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
</android.support.design.widget.AppBarLayout>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay"/>
</android.support.design.widget.CoordinatorLayout>
这是我的 SettingsActivity 页面中的代码:
private void setupActionBar() {
ViewGroup rootView = (ViewGroup)findViewById(R.id.action_bar_root); //id from appcompat
if (rootView != null) {
View view = getLayoutInflater().inflate(R.layout.app_bar_settings1, rootView, false);
rootView.addView(view, 0);
Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);
int color_one = settings.getInt("color_one", 0);
toolbar.setBackgroundColor(color_one);
}
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
// Show the Up button in the action bar.
actionBar.setDisplayHomeAsUpEnabled(true);
}
}
这是我的 color.xml :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#ff0000</color>
<color name="colorPrimaryDark">#363636</color>
<color name="colorAccent">#FF4081</color>
<color name="white">#FFFFFF</color>
</resources>
我的 style.xml :
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here.-->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="titleTextColor">@android:color/black</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
</resources>
这在我的 Manifest :
中<activity
android:name=".settings.SettingsActivity"
android:label="@string/title_activity_settings"
android:theme="@style/AppTheme.NoActionBar"></activity>
修改2
从操作栏
更改为工具栏通过 Sodiq 轻松帮助我 用于彩色状态栏
来自Sodiq的代码
从设置活动
更改清单条目android:theme="@style/AppTheme.NoActionBar"
到
android:theme="@style/AppTheme"
并更改 Style.xml
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
到
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
感谢 Sodiq 提供帮助
答案 0 :(得分:1)
尝试在清单上的应用程序中删除android:theme="@style/AppTheme.NoActionBar" on your activity and only use
android:theme =“@ style / AppTheme”`
并将主题样式<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
更改为<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
答案 1 :(得分:0)
这对我有帮助
我在 Style.xml
中创建了新样式<style name="AppTheme.Settings" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here.-->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="titleTextColor">@android:color/black</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
并在我的清单
中进行修改<activity
android:name=".settings.SettingsActivity"
android:label="@string/title_activity_settings"
android:theme="@style/AppTheme.Settings"></activity>