我使用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:
图标的问题已经解决了.我将支持库添加为单独的项目.显然,支持库中的启动器图标取代了我的启动器图标.我从支持库项目中删除了所有资源,现在我的图标正常显示.当然主要问题仍然存在.
最佳答案
好吧,我为此做了一些努力
我改变了我制作的动作栏的样式,使其具有透明的图标和文字
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));
....
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。