我使用ActionBar Sherlock和自定义主页按钮。在Nexus 5中,主页按钮位于操作栏的右侧。你可以从图像中看到它。有没有人遇到过这个问题?
谢谢。
其他设备(如Nexus 4,Samsung Galaxy S4等)
Nexus 5
要显示自定义主页按钮,我正在使用
actionBar.setDisplayShowCustomEnabled(true);
答案 0 :(得分:0)
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setDisplayUseLogoEnabled(false);
actionBar.setDisplayShowHomeEnabled(false);
答案 1 :(得分:0)
我使用RelativeLayout
作为我的自定义视图,我认为这导致了我遇到的问题。我用LinearLayout
切换它并设置了一些属性,我的问题解决了。
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setHomeButtonEnabled(false);
actionBar.setDisplayHomeAsUpEnabled(false);
但我仍然不明白为什么它适用于其他设备,如三星Galaxy S4,Nexus 4等,并且与Nexus 5和Nexus 7不兼容。
在我切换到LinearLayout
之前,我尝试了各种方法来解决我的问题,包括以编程方式控制设备和设置边距。
对于仍然坚持使用RelativeLayout
for ActionBarSherlock customView的人,您可以使用我不推荐的解决方法。
if (Build.MODEL.contains("Nexus 5")) {
LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
params.setMargins(-150, 0, 0, 0);
actionBar.setCustomView(v, params);
}
答案 2 :(得分:0)
也许这会奏效。尝试
View homeIcon = findViewById(android.R.id.home);
((View) homeIcon.getParent()).setVisibility(View.GONE);
getSupportActionBar().setTitle("");