之前想实现页面的滑动效果,在网上搜了下,挺多的关于TabHost的使用的例子,然后就使用了TabHost,但是效果非常一般(Maybe我不会用)。然后同学介绍使用ViewPager,就上网问百老师,挺多例子挺详细的,亲自试了下,做出了我想要的效果,现在就总结下:
1.建立一个主的Activity,继承FragmentActivity,再创建一个Adapter类,继承FragmentPagerAdapter(继承其他Adapter没有测试过),使用的方式和ListView的Adapter差不多。然后实现其中的相应的办法,根据你的需要实现。
需要在布局文件中添加代码:
<android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_above="@id/titleLayout" > </android.support.v4.view.ViewPager>
2.然后创建页面的类,都要继承Fragment,并实现其中的OnCreateView的方法,其中布局的获得要使用Inflater来获得和设置代码如下:
@Override public void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); LayoutInflater layoutInflater = getActivity().getLayoutInflater(); mMainView = layoutInflater.inflate(R.layout.activity_discovery, (ViewGroup) getActivity().findViewById(R.layout.activity_main), false); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // TODO Auto-generated method stub ViewGroup p = (ViewGroup) mMainView.getParent(); if (p != null) { p.removeAllViewsInLayout(); Log.v("huahua", "fragment1-->移除已存在的View"); } return mMainView; }
基本上就是这两步就算搞定了ViewPager了。
注:纯粹是个人学习笔记,有不懂的或者有其他不同见解的,可以在评论上说,非常乐意一起探讨