2011-02-16 12 views
6

To jest jedno menu w poziomie, które muszę zaimplementować. A to menu powinno przewijać się poziomo płynnie za pomocą lewej i prawej strzałki, jak ta aplikacja Fox News https://market.android.com/details?id=com.foxnews.android z pierwszym zrzutem ekranu aplikacji.Menu poziome z HorizontalScrollView-android

Używając google i innego posta na tym forum użyłem horizontalScrollView, aby to osiągnąć, ale nie wiem, jak ustawić lewy i prawy przezroczysty obraz ze strzałką, aby wskazać, że w zależności od przewijania jest więcej elementów w lewo lub w prawo.

Cokolwiek zakodowałem, uzyskałem ruch przewijania, ale jest on powolny i stara się pokazywać strzałki w lewo i w prawo.

Proszę mi powiedzieć, jeśli masz jakieś rozwiązanie na ten temat.

Ten układ Używam

<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> 
+0

Próbowałem również przez to nie działa prawidłowo .. koleś ... –

+0

Witaj Ganapathy, masz jakiś pomysł, czego użyli w aplikacji Fox News ?? – sachin003

Odpowiedz

0

Nie wiem dokładnie kontekst, w którym używasz, ale powinieneś zmienić LinearLayout do względnym (jest to proste zmieni się na swoje TextView dodanie poniższych informacji:

  • dla pierwszego tekstu:

    android: layout_alignParentLeft = "true"

  • Przez następnych tekstach

    android: layout_toRightOf = "@ id/previous_text"

Jeśli osadzanie to wewnątrz innych LinearLayouts, być może powinieneś również rozważyć, czy możesz tam również użyć względnych wyników zgodnie z wytycznymi dotyczącymi wydajnego układu, podanymi poniżej:

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

Daj mi znać, jeśli pomoże ci to w niektórych grach;) Dzięki i życzę powodzenia!

Powiązane problemy