0

Üç parçayı tutan bir görüntüleyici ile bir PagerSlidingTabStrip var. Fragmanlardan biri ListView'e sahip, ListView öğelerinde sola veya sağa kaydırdığımda, viewpager'ın sayfaları değiştirmemesi, ListView kaydırma işleminin dışına doğru kaydırdığımda iyi çalışıyor. Sadece TextView içeren diğer parçalarda kaydırdığımda tokatlamak çalışıyor. Lütfen, Ne yapıyorum yanlış yapabilirim?PagerSlidingTabStrip ViewPager kaydırma yapmıyor

Bu sorun, yalnızca PagerSlidingTabStrip'in örnek kodunun kendisinde aşağıdaki parçayı ve bağdaştırıcıyı ekleyerek çoğaltılabilir.

@SuppressLint("ValidFragment") 
public class HomeFragment extends Fragment { 


    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
     View view = null; 
     try { 
      view = inflater.inflate(R.layout.home, container, false); 
      ListView listview = (ListView) view.findViewById(R.id.homegrid); 

      listview.setAdapter(new HomeAdapter(inflater)); 
     } 
     catch (Exception e) 
     { 
      e.printStackTrace(); 
     } 

     return view; 
    } 
} 

public class HomeAdapter extends BaseAdapter { 
    private Context mContext; 
    LayoutInflater inflater; 

    public HomeAdapter(LayoutInflater inflater) 
    { 
     this.inflater = inflater; 
    } 

    public int getCount() { 
     return 5; 
    } 

    public Object getItem(int position) { 
     return null; 
    } 

    public long getItemId(int position) { 
     return 0; 
    } 

    public View getView(int position, View convertView, ViewGroup parent) { 
     if (convertView == null) { // if it's not recycled, initialize some attributes 
      convertView = inflater.inflate(R.layout.home_grid_item, parent, false); 
     } 
     TextView text1 = (TextView)convertView.findViewById(R.id.title); 
     text1.setText("FAVOURITE "+position); 

     return convertView; 
    } 


} 

home.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_gravity="center_horizontal|center_vertical" 
    android:gravity="center_horizontal|center_vertical" 
    android:orientation="vertical" 
    android:background="#ffe0e0e0" 
    android:paddingLeft="10dp" 
    android:paddingRight="10dp" 
    android:paddingTop="20dp" 
    android:paddingBottom="20dp" 
    android:clipToPadding="false" 
    > 

    <ListView 
     android:id="@+id/homegrid" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center_horizontal|center_vertical" 
     android:layout_gravity="center_horizontal|center_vertical" 
     > 
    </ListView> 

</LinearLayout> 

home_grid_item.xml android ile TextView içeren

<?xml version="1.0" encoding="utf-8"?> 

    <LinearLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:layout_gravity="center_vertical" 
     android:gravity="center_horizontal|center_vertical" 
     android:background="#000000" 
     > 
    <TextView 
     android:id="@+id/title" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center_vertical|center_horizontal" 
     android:paddingRight="0dp" 
     android:paddingLeft="0dp" 
     android:text="FAVOUR" 
     android:textSize="9pt" 
     android:textStyle="bold" 
     android:textAllCaps="true" 
     android:textColor="#FFFFFF" 
     android:singleLine="true" 
     android:maxLines="1" /> 
    </LinearLayout> 
+0

O 'ListView'' onTouch' olay geçersiz kılar gibi görünüyor. Listview plz kod ekleme –

+0

Eğer "PagerSlidingTabStrip" eklemezseniz, o zaman ne olacak? A "ListView", hem "ViewPager" hem de "PagerSlidingTabStrip" ile mükemmel bir şekilde çalışmalıdır, bu yüzden bir şey bozuluyor. Google’daki örnek kodları değiştirmediniz veya geliştirmediniz mi? Ayrıca, "Fragman" hatalıdır - muhtemelen bu konuyla ilgisi yoktur, ancak her zaman için Fragman için bir kamu kurucunuz olmalıdır. – Darwind

+0

Ve bir şey daha ... "PagerSlidingTabStrip" varsayılan bir Android bileşeni değil - bir 3. parti kitaplığı - neden Tasarım kitaplığından 'TabLayout' ile denemiyorsunuz? Nasıl çalıştığına dair bu eğitime bakın: http://www.androidhive.info/2015/09/android-material-design-working-with-tabs/ – Darwind

cevap

İlgili konular