Horizo​​ntalScrollView-android的水平菜单

sac*_*003 6 android horizontalscrollview

这是我必须实现的一个水平菜单.这个菜单应该用左右箭头平滑地滚动,就像这个福克斯新闻应用程序https://market.android.com/details?id=com.foxnews.android与第一个应用程序屏幕截图.

通过在这个论坛上使用谷歌和其他帖子我使用horizo​​ntalScrollView来实现它,但不知道如何用箭头设置左右透明图像,以指示根据滚动有更多的元素向左或向右.

无论我编码什么,实现滚动运动,但它的速度慢,并努力用箭头显示左右图像.

请告诉我你是否有任何解决方案.

这个布局我正在使用

<HorizontalScrollView
    android:id="@+id/hor_svID"
    android:layout_width="wrap_content"
    android:layout_height="35dip"
    android:scrollbars="none"
    android:fillViewport="false"
    android:focusable="false"
    android:background="@drawable/submenu_bg">
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:orientation="horizontal"
        android:focusable="false"
        android:background="#FFFFFF"
        android:gravity="center">
        <TextView android:id="@+id/TechnologyTxtVId" 
                android:text="TECHNOLOGY"   
                android:textColor="#342D7E"
                android:textSize="12sp"
                android:textStyle="bold"
                android:gravity="center"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>
        <TextView android:id="@+id/SportsTxtVId" 
                android:text="SPORTS" 
                android:textColor="#342D7E" 
                android:textStyle="bold"
                android:textSize="12sp"
                android:gravity="center"
                android:layout_height="wrap_content" 
                android:layout_width="wrap_content" 
                android:paddingLeft="15dip"></TextView> 
        <TextView android:id="@+id/EntntTxtVId" 
                android:text="ENTERTAINMENT"    
                android:textStyle="bold"
                android:paddingLeft="15dip"
                android:textSize="12sp"
                android:gravity="center"
                android:textColor="#342D7E"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>
        <TextView android:id="@+id/LocalTxtVId" 
                android:text="LOCAL"    
                android:textStyle="bold"
                android:paddingLeft="15dip"
                android:textSize="12sp"
                android:textColor="#342D7E"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>        
        <TextView android:id="@+id/WorldTxtVId" 
                android:text="WORLD"    
                android:textStyle="bold"
                android:textSize="12sp"
                android:paddingLeft="15dip"
                android:gravity="center"
                android:textColor="#342D7E"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>    
        <TextView android:id="@+id/FeaturesTxtVId" 
                android:text="FEATURES" 
                android:textStyle="bold"
                android:textSize="12sp"
                android:paddingLeft="15dip"
                android:gravity="center"
                android:textColor="#342D7E"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>        
        <TextView android:id="@+id/RecentTxtVId" 
                android:text="RECENT"   
                android:textStyle="bold"
                android:textSize="12sp"
                android:paddingLeft="15dip"
                android:gravity="center"
                android:textColor="#342D7E"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"></TextView>                                
    </LinearLayout>                                     
</HorizontalScrollView>
Run Code Online (Sandbox Code Playgroud)

son*_*nyd 0

我不知道您使用它的确切上下文,但您可能应该将 LinearLayout 更改为相对的(这是对 textViews 的简单更改,添加以下内容:

  • 对于第一个文本:

    android:layout_alignParentLeft="true"

  • 对于接下来的文本

    android:layout_toRightOf="@id/previous_text"

如果您将其嵌入到其他 LinearLayouts 中,也许您还应该重新考虑是否也可以按照下面提供的高效布局指南在其中使用relativeLayouts:

http://developer.android.com/resources/articles/layout-tricks-efficiency.html

让我知道这是否有助于获得一些荣誉;)谢谢,祝你好运!