Android界面布局大集合(Fragment+ViewPager)
最新推荐文章于 2024-05-04 20:58:56 发布
前言:对一个Android应用来说,界面布局是非常重要的,但是现在的一些资料都没有对布局的系统的整理,一些博客写的东西也太零散,所以我就整理了一下这些界面的用法。如果有不对的地方请读者们指出,我一定及时改正。一、普通的ViewPager效果图 1.MainActivity布局文件
前言:对一个Android
应用来说,界面布局是非常重要的,但是现在的一些资料都没有对布局的系统的整理,一些博客写的东西也太零散,所以我就整理了一下这些界面的用法。如果有不对的地方请读者们指出,我一定及时改正。
一、普通的ViewPager
效果图
1.MainActivity布局文件
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.tzy.layoutdemo.MainActivity">
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="300dp"/>
</LinearLayout>
2.MainActivity里面
2.1把布局的View加到List里面
LayoutInflater inflater = getLayoutInflater();
view1 = inflater.inflate(R.layout.view_01,null);
view2 = inflater.inflate(R.layout.view_02,null);
view3 = inflater.inflate(R.layout.view_03,null);
mViewList = new ArrayList<>();
mViewList.add(view1);
mViewList.add(view2);
mViewList.add(view3);
2.2继承PagerAdapter,把viewList作为参数传进去,也可以直接用匿名内部类的形式
这里需要重写的方法如下:
- getCount 返回当前有效视图的个数
①把当前页面增加到ViewPager里面
②并且返回一个Object,这个Object是标识当前页面的一个对象,按照官方文档的解释,ViewPager把每个视图通过键联系起来,键可以是当前页面的View,也可以是positon,或者可以代表当前页面的任意值 - instantiateItem 增加视图到ViewPager
- destroyItem 把ViewPager里面的视图移除
- isViewFromObject 参数object代表instantiateItem返回的键和页面的视图是否对应view == object (object表示的是返回的View)
选择性重写的方法:getPageTitle() 方法可以通过position设置标题
PagerAdapter pagerAdapter = new PagerAdapter() {
//返回当前有效视图的个数
@Override public int getCount() {
return mViewList.size();
}
/*功能:该函数用来判断instantiateItem(ViewGroup, int)函数所返回来的Key
与一个页面视图是否是代表的同一个视图(即它俩是否是对应的,对应的表示同一个View)*/
@Override
public boolean isViewFromObject(View view, Object object) {
return view == object;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
container.addView(mViewList.get(position));
//将当前页面本身的View作为key 也可以是代表当前页面的任意值,比如position
return mViewList.get(position);
}
@Override
public
08-29
1028
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交
评论 3
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
添加红包