Java 在不同的活动中更改操作栏的颜色
我想在每个活动中都有不同颜色的动作条,但在网上搜索后,我什么都找不到。我想知道这是否是可能的,如果是,如何实现?假设您需要一个带有Java 在不同的活动中更改操作栏的颜色,java,android,xml,android-studio,Java,Android,Xml,Android Studio,我想在每个活动中都有不同颜色的动作条,但在网上搜索后,我什么都找不到。我想知道这是否是可能的,如果是,如何实现?假设您需要一个带有setActionBarColor方法的父活动 public class ParentActivity extends ActionBarActivity/*or similar*/ { public void onCreate(Bundle state) { super.onCreate(state); } public
setActionBarColor
方法的父活动
public class ParentActivity extends ActionBarActivity/*or similar*/ {
public void onCreate(Bundle state) {
super.onCreate(state);
}
public void setActionBarColor(Color color) {
getActionBar().setBackgroundDrawable(new ColorDrawable(color));
}
}
并在此基础上扩展每个活动
public class ActivityA extends ParentActivity {
@Override
public void onCreate(Bundle state) {
//call ParentActivity.onCreate(state)
super.onCreate(state);
setContentView(R.layout.activity_a);
// some initialization code
setActionBarColor(Color.rgb(248, 248, 248));
}
}
public class ActivityB extends ParentActivity {
@Override
public void onCreate(Bundle state) {
// some initialization code
setActionBarColor(Color.rgb(248, 248, 248));
}
}
检查此答案可能重复的活动似乎在启动时崩溃。我认为第二位代码进入实际活动是对的?@ZakWoolley这里有一个继承原则在起作用。当您启动每个活动时,它将调用父方法,如果您不使用与child相关的对象,则不会崩溃。@ZakWoolley yes。实际上这是一个你的活动,你在清单中声明并实现了。我想我不太明白你在说什么。我必须在创建时调用父活动“从主活动创建方法”吗?@Zak Woolley是的。你会打电话的。