细节:
我正在扩展ActionBarActivity.
自2011-11-06起,Eclipse和SDK已完全修补.
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="14" />
Run Code Online (Sandbox Code Playgroud)
使用Android 2.3.3
应用程序部署到三星设备android:theme="@android:style/Theme.Light"
问题:应用程序很轻,但ActionBar是蓝色的灰色图标,蓝色背景颜色几乎看不到.我也希望ActionBar很轻,所以它们的灰色图标更加明显.
我试过修改样式但无济于事.
我可能错过了一些微不足道的东西.
如何使用XML更改ActionBarActivity的ActionBar的背景颜色?
我想更改Android 4.2中选项(溢出)菜单的背景颜色.我已经尝试了所有方法,但它仍然显示主题设置的默认颜色.我使用了以下代码和XML配置.
MainActivity.java
public class MainActivity extends Activity {
@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getActionBar().setIcon(R.drawable.ic_launcher);
getActionBar().setTitle("Sample Menu");
getActionBar().setBackgroundDrawable(new
ColorDrawable(Color.parseColor("#33B5E5")));
int titleId = Resources.getSystem().getIdentifier("action_bar_title", "id", "android");
TextView titleText = (TextView)findViewById(titleId);
titleText.setTextColor(Color.parseColor("#ffffff"));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
setMenuBackground();
return true;
}
protected void setMenuBackground(){
// Log.d(TAG, "Enterting setMenuBackGround");
getLayoutInflater().setFactory( new Factory() {
@Override
public View onCreateView(String name, Context context, …Run Code Online (Sandbox Code Playgroud) android android-menu android-theme android-actionbar android-4.2-jelly-bean
我想在用户选择导航列表中的选择时更改操作栏背景的颜色.
目前,我的代码如下所示:
@Override
public boolean onNavigationItemSelected(int itemPosition, long itemId) {
ColorDrawable colorDrawable = new ColorDrawable();
ActionBar actionBar = getActionBar();
if(itemPosition == 0)
{
colorDrawable.setColor(0xffFEBB31);
actionBar.setBackgroundDrawable(colorDrawable);
return true;
}
if(itemPosition == 1)
{
colorDrawable.setColor(0xff9ACC00);
actionBar.setBackgroundDrawable(colorDrawable);
return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
但是,第一次在导航列表中选择itemPosition 1时,它会将ActionBar颜色更改为白色.

第二次单击导航列表中的itemPosition 1时,我没有问题.

谁能告诉我为什么会这样,以及如何解决问题?感谢您的帮助!
我想了解,之间有什么区别Toolbar,Appbar,ActionBar.而我正试图改变我的AppBar或其他任何颜色的红色.
有人提到尝试改变主题.我试过但不知道差异,我也是android编程的新手.所以,如果你能帮助我.这是styles.xml文件代码
<!-- 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="colorAccent">@color/colorAccent</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar"
>
<item name="android:titleTextStyle">@style/MyTextTitle</item>
</style>
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" >
<item name="android:titleTextStyle">@style/MyTextTitle</item>
</style>
<style name="MyTextTitle" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title">
<item name="android:textColor">@color/red</item>
</style>
Run Code Online (Sandbox Code Playgroud)
我希望你明白我想说的话.原谅我的无知,因为我渴望学习它,所以不能等待.