我使用Google提供的支持库中的ActionbarActivity.我为我的操作栏创建了一个自定义视图,其中包含附加到右侧的按钮和图像.问题是一旦活动开始我看到操作栏的默认标题(应用程序名称)和Android启动器图标(甚至不是我的启动器图标)出现在左侧一段时间,然后我的自定义视图应用.我该如何解决这个问题.我在onCreateView()之前和之前调用了以下代码,没有运气.我还有另一个问题,即使我的自定义视图设置后,它仍然保持带有android徽标图标的图标而不是我的启动器图标.
this.getSupportActionBar().setDisplayShowCustomEnabled(true);
this.getSupportActionBar().setDisplayShowTitleEnabled(false);
getSupportActionBar().setDisplayShowHomeEnabled(false);
LayoutInflater inflator = (LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflator.inflate(R.layout.title_view,null);
TextView tvTitle = (TextView) v.findViewById(R.id.actionbar_title);
this.getSupportActionBar().setCustomView(v);
编辑1:
图标的问题已经解决了.我将支持库添加为单独的项目.显然,支持库中的启动器图标取代了我的启动器图标.我从支持库项目中删除了所有资源,现在我的图标正常显示.当然主要问题仍然存在.
最佳答案
好吧,我为此做了一些努力
原文链接:https://www.f2er.com/android/431034.html我改变了我制作的动作栏的样式,使其具有透明的图标和文字
2-然后在setupActionBar()方法中我手动设置颜色
private void setupActionBar() {
getSupportActionBar().setDisplayShowHomeEnabled(false);
this.getSupportActionBar().setDisplayShowTitleEnabled(false);
this.getSupportActionBar().setDisplayShowCustomEnabled(true);
LayoutInflater inflator = (LayoutInflater)this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflator.inflate(R.layout.title_view,null);
TextView tvTitle = (TextView) v.findViewById(R.id.actionbar_title);
tvTitle.setTextColor(getResources().getColor(R.color.white));
....
}