2012-07-19 78 views
1

首先,我想说我修改了方法needsDividerBefore现在分隔符出现在菜单项之间。不过,我想定制这个分隔线,我尝试了前面提到的所有方法,但是我无法成功。ActionBarSherlock Custom MenuItem Divider

其次,我想要的分隔线与foursquare,twitter和instagram相同。这是一个普通的分隔符还是所有这些应用程序都使用自定义布局?我不知道,但即使他们使用自定义布局,我想从menu.xml添加动作按钮,我如何自定义分隔线?

回答

1
  1. 修改该方法只会影响ICS预先手机,所以你仍然会得到ICS +自然分隔行为。这意味着,根据Android的运行版本,您的应用看起来会有所不同。

  2. 您可以使用actionBarDivider主题属性更改分隔线。

+0

谢谢杰克的回复。我想再问一个问题;我的手机的Android版本是Froyo,foursquare或instagram有一个高度与ActionBar相同的分频器。但是,我的分隔线的高度与标签导航相同。我怎样才能改变菜单项之间的分隔线的高度? – adaclks 2012-07-19 15:52:45

+0

另外,在ActionBarSherlock的顶部栏和标签之间是否有空间可能? – adaclks 2012-07-19 16:30:27

+1

不可以。ActionBarSherlock只是ICS操作栏的后端,因此它只能执行本机操作栏可以执行的操作。 – 2012-07-19 16:57:09

0

我在MenuItem中找不到背景属性。这是菜单项

的XML
<item 
    android:id="@+id/menu" 
    android:icon="@drawable/menu" 
    android:title="menu" 
    android:showAsAction="ifRoom|withText"> 
</item> 

然后我加入

android:actionLayout="@layout/divider"

而且divider.xml低于;

<?xml version="1.0" encoding="UTF-8"?><LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:orientation="horizontal" > 

<View 
    android:layout_width="1dp" 
    android:layout_height="fill_parent" 
    android:background="@color/black" 
    android:layout_marginRight="50dp" /></LinearLayout> 

当我使用它时,图标是不可见的。添加自定义分隔线的最佳方法是什么?

+0

使用'actionBarItemBackground'属性在主题上指定操作项的背景。如果您为drawables使用9修补程序,则可以创建在每个操作项目上都有分隔线的效果。 – 2012-07-20 01:57:34

+0

通过这种方式,操作项的按下背景是不可见的。另外,我使用自定义图标,并且actionBarItemBackground属性影响图标的背景。 – adaclks 2012-07-20 12:26:01