6

Próbuję zaimplementować tę aplikację. W tej chwili opracowałem zakładki, a ponieważ mam więcej niż 7 kart, wygląda na zbyt zatłoczoną. Jak mogę zaprojektować tak, aby tabwidget był przewijany poziomo. Widziałem ten projekt na kilku aplikacjach na rynku, ale nie mam pojęcia, jak to zaimplementować w mojej aplikacji.Jak zaimplementować przewijane w poziomie zakładki?

Jedna aplikacja, którą widziałem, miała poziomy przewijany ekran, w którym przewija się samodzielnie, a po naciśnięciu określonego obrazu/przycisku wyświetla pewną treść. Wygląda na to, że nie są to zakładki.

Czy ktoś ma pomysł?

Odpowiedz

3

Proszę sprawdzić aplikację ViewPager Jake Whartona. Dokładnie tego potrzebujesz. Jest to projekt biblioteki, więc musisz go uwzględnić w swoim projekcie.

JakeWharton/Android-ViewPagerIndicator

+0

Cześć Calvin dzięki za twój post To działało dla mnie. Pracuję nad aplikacją na tablet. ale zakładki nie przyjmują szerokości tekstów>. Mam nadzieję, że dostaniesz to, co mam na myśli, że wygląda na przeciążony. Czy mogę zdefiniować szerokość dla zakładki, w której znajduje się cały tekst. np .: jeśli istnieje zakładka "Profil użytkownika", ale jest wyświetlana tylko jako "Użytkownik" –

+0

@roses_r po prostu usuń metodę onMeasure (int, int) z klasy TabPageIndicator biblioteki. To działa. – alu

5

Jest to całkiem dobry przykład za pomocą HorizontalScrollView. http://java.dzone.com/articles/scrolling-tabs-android

+0

Cześć Calvin dzięki za twój post To działało dla mnie. Pracuję nad aplikacją na tablet. ale zakładki nie przyjmują szerokości tekstów>. Mam nadzieję, że dostaniesz to, co mam na myśli, że wygląda na przeciążony. Czy mogę zdefiniować szerokość dla zakładki, w której znajduje się cały tekst. np .: jeśli istnieje zakładka "Profil użytkownika", ale wyświetla się tylko jako "Użytkownik" –

0

Sprawdź ten link: https://dzone.com/articles/scrolling-tabs-android

Owiń TabWidget z HorizontalScrollView oraz zestaw kart będzie móc rozszerzyć poza szerokość ekranu, a użytkownik może przeciągnąć zaczepy po lewej i prawej zgodnie z wymaganiami:

<?xml version="1.0" encoding="utf-8"?><TabHost xmlns:android="http://schemas.android.com/apk/res/android"   android:id="@android:id/tabhost"   android:layout_width="fill_parent"   android:layout_height="fill_parent"> <LinearLayout android:orientation="vertical"    android:layout_width="fill_parent"    android:layout_height="fill_parent"> <HorizontalScrollView android:layout_width="fill_parent"       android:layout_height="wrap_content"       android:fillViewport="true"       android:scrollbars="none">  <TabWidget android:id="@android:id/tabs"     android:layout_width="fill_parent"     android:layout_height="wrap_content"/> </HorizontalScrollView> <FrameLayout android:id="@android:id/tabcontent"     android:layout_width="fill_parent"     android:layout_height="fill_parent" /> </LinearLayout></TabHost> 
12

TabLayout z Android biblioteki projektowania

<android.support.design.widget.TabLayout 
    android:id="@+id/categories" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    app:tabMode="scrollable" /> 
2
<HorizontalScrollView 
    android:id="@+id/vTabs" 
    android:scrollbars="none" 
    android:layout_width="fill_parent" 
    android:layout_alignParentBottom="true" 
    android:layout_height="wrap_content"> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:background="@color/main_color_gray_dk" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content"> 
     <Button 
      android:enabled="false" 
      android:id="@+id/tab1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="@string/popular" /> 
     <View 
      android:id="@id/view1" 
      android:layout_width="@dimen/pad_1dp" 
      android:layout_height="fill_parent" /> 
     <Button 
      android:id="@id/tab2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="@string/newest" /> 
     <View 
      android:id="@id/view1" 
      android:layout_width="@dimen/pad_1dp" 
      android:layout_height="fill_parent" /> 
     <Button 
      android:id="@id/tab3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="@string/distance" /> 
     <View 
      android:id="@id/view1" 
      android:layout_width="@dimen/pad_1dp" 
      android:layout_height="fill_parent" /> 
     <Button 
      android:id="@+id/tab4" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="@string/minimum" /> 
    </LinearLayout> 
</HorizontalScrollView> 

Zmiany Teksty do gustu. Miejsce w relateveLayout i alignToParentBottom = "true" Mam nadzieję, że to pomoże