如何设置水平滚动菜单栏

时间:2010-08-26 10:30:17

标签: android

朋友的,   我的任务是在水平滚动中设置菜单,两端的图像显示菜单的可用性。我是通过使用图库视图完成的,但我需要在菜单之间放置一个分隔符(垂直线),我无法在图库之间获取分隔符。 我怎么能得到它。

我需要以下视图

        ----------------------------------------
         <   menu1     |  menu2  |   menu3   >
       -----------------------------------------

如果你有,请参考CBSNews应用程序。

提前致谢。

1 个答案:

答案 0 :(得分:1)

基本上,我们的想法是将分隔符包含在图库项目的布局中,例如:

<View android:id="@+id/separator" android:background="#000" 
    android:layout_height="80dip"
    android:layout_marginLeft="5sp" android:layout_marginRight="15sp" 
    android:layout_width="3sp" 
    android:layout_alignParentLeft="true"></View>

<RelativeLayout android:id="@+id/RelativeLayout01" android:layout_width="100dip"
    android:layout_toRightOf="@id/separator" 
    android:layout_height="80dip" xmlns:android="http://schemas.android.com/apk/res/android">
    <ImageView android:id="@+id/imageView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:scaleType="centerInside"></ImageView>
</RelativeLayout>

然后,在SimpleAdapter派生类中,隐藏位置为0的项目的分隔符:

    public View getView(int position, View convertView, ViewGroup parent) {

        View view = super.getView(position, convertView, parent);
        View separator = view.findViewById(R.id.separator);
        if ( separator != null)
            separator.setVisibility(position == 0 ? View.GONE : View.VISIBLE);
        return view;
    }

设置图库间距,使其与布局中设置为分隔符的边距很好地对应。