2013-11-04 68 views
2

我正在使用我的IM应用程序的主要活动的主页按钮,以允许用户更改其可用性状态。我的应用程序使用的是ActionBarSherlock,它回退到支持的本地实现。Android操作栏主页按钮不包括活动标题

然而,可点击区域的大小是的Android版本之间不一致:

在Android 4.2.0和之前(包括兼容性库),仅图标是可点击:

Android 4.1

在Android 4.2.1+,图标和活动名称是可点击:

Android 4.2

如何使所有版本的Android的活动标题始终包含图标活动标题?

回答

0

我正在使用ActionBarCompat(如果你还没有,你应该更新),所以这可能不会完全相同。我希望完整的标题可以点击以使用导航抽屉。出于某种原因,使用而不是文本的自定义徽标,使整个事情自动点击,只有图标,可以点击之前:

final ActionBar actionBar = getSupportActionBar(); 
actionBar.setDisplayShowTitleEnabled(false); 
actionBar.setDisplayUseLogoEnabled(true); 
actionBar.setLogo(R.drawable.im_title); 

我不知道是否有可能引发这种变化,同时仍然使用文本与默认图标,但setDisplay ...方法和标志可能是一个很好的开始寻找的地方。

+0

它看起来像徽标和项目是等价的,除了允许更广泛的徽标。它不会使标题文本可点击,并且我不想让标题文本成为图像,原因很明显。 – ge0rg

+0

有意义......但不幸的是,这可能是一个直到4.2.1才修复的bug(或行为改变),修复它需要在ActionBarSHerlock/ActionBarCompat中进行一些黑客攻击。我能想到的最好的方法是使用透明的徽标图像和负填充以确保文本从透明图像的左边缘开始,就好像它不在那里(除了单击捕获)。您可能能够查找ABS中的填充/边距,但不能获取ABS或本地实现。 – ProjectJourneyman