Viewpager里面的ListView - 没有滚动

时间:2013-01-11 09:09:35

标签: android android-listview android-viewpager android-listfragment

我想使用ListView (ListFragment)ViewPager内放置FragmentPagerAdapter。 但是当执行此操作时,ListViews滚动功能似乎被禁用(我无法向上和向下滚动)。这是我的代码:

main.xml中          

<include layout="@layout/prisniveau_info" />

<android.support.v4.view.ViewPager
    android:id="@+id/pager" 
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <android.support.v4.view.PagerTitleStrip
        android:id="@+id/pager_title_strip"
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:layout_gravity="top"
        android:background="@color/light_gray"
        android:paddingBottom="5dp"
        android:paddingTop="5dp"
        android:textColor="#fff" />
</android.support.v4.view.ViewPager>

适配器:

 public class MyAdapter extends android.support.v4.app.FragmentPagerAdapter
     {
public MyAdapter(android.support.v4.app.FragmentManager fm)
{
     super(fm);
}
@Override
public int getCount()
{
    return 2;
}       
@Override
public Fragment getItem(int position)
{
    Fragment fragment = null;
    if(position==0)
    {
        fragment = new MyListFragment();                
    }
    else if(position==1)
    {
        fragment = new MyMapFragment();
    }
    return fragment;
}       
@Override
public CharSequence getPageTitle(int position)
{
    switch (position)
    {
        case 0:
        return  getString(R.string.title_list).toUpperCase(Locale.getDefault());
        case 1:
            return getString(R.string.title_map).toUpperCase(Locale.getDefault());
        }
        return null;
    }       
    public String getFragmentTag(int index)
    {
         return "android:switcher:" + R.id.pager + ":" + index;
    }
}

是否可以在ListView内部ViewPager滚动?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案here。在常规ScrollView中对Horizo​​ntalScrollView正确处理触摸事件可能存在问题,但该问题的解决方案似乎也适用于此问题。