Xamarin.Android ViewPager简单使用
来源:互联网 发布:上古卷轴5精灵捏脸数据 编辑:程序博客网 时间:2024/05/22 01:48
ViewPager的简单介绍
ViewPager就是一个页面切换的组件而已,我们可以往里面填多个view,然后
我们左右滑动切换不同的view而已,和ListView一样,我们也需要一个Adapter(适配器),将要显示的View和我们的ViewPager进行绑定,而ViewPager有特定的Adapter——PagerAdapter!
另外,Google官方是建议我们使用Fragment来填充ViewPager的,这样可以更加方便的生成
每个Page以及管理每个Page的生命周期!当然也给我们提供了两个不同的Adapter!分别是:
FragmentPageAdapter和FragmentStatePagerAdapter,前者适用于页面较少的情况,后者适用于页面较多的情况
先上效果图
实现这个效果呢,并不难
首先要有Xamarin.Android.Support.V4这个dll文件,没有的可以通过这种方式下载
效果图如下:
第一步:先建立三个.axml文件
界面布局如下:
<?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:orientation="vertical" android:gravity="center" android:background="#FF6666"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="第一个Page" /></LinearLayout>
其余连个界面背景颜色改变一下即可
第二步:建立ViewPager的适配器——PagerAdapter
internal class ViewPagerAdapter : PagerAdapter { private readonly List<View> viewLists; //定义一个view的集合,赋给ViewPager,viewPager和listview其实是一样的 public override bool IsViewFromObject(View view, Object objectValue) { return view == objectValue; //?判断view和对应的objectValue等不等,对,就是酱纸。。。。 } public ViewPagerAdapter(List<View> _viewList) { viewLists = _viewList; } //获得ViewPage里面有多少个Count public override int Count { get { return viewLists.Count(); } } public override Java.Lang.Object InstantiateItem(ViewGroup arg0, int arg1) { arg0.AddView(viewLists[arg1]); return viewLists[arg1]; } public override void DestroyItem(ViewGroup arg0, int arg1, Java.Lang.Object arg2) { arg0.RemoveView(viewLists[arg1]); }
在MainActivity里面
界面代码:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity"> <TextView android:gravity="center" android:layout_width="match_parent" android:layout_height="40dp" android:text="简单的ViewPager使用" android:background="#FCBC12" /> <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" /></LinearLayout>后台代码:
[Activity(Label = "Material", MainLauncher = true, Icon = "@drawable/icon")] public class MainActivity : Activity { private int count = 1; //定义相关变量 private View v1, v2, v3; private ViewPager vPager; private List<View> aList; private ViewPagerAdapter mAdapter; protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); SetContentView(Resource.Layout.Main); vPager = FindViewById<ViewPager>(Resource.Id.viewpager); //动态加载三个View var li = LayoutInflater.From(this); v1 = li.Inflate(Resource.Layout.Page1, null); v2 = li.Inflate(Resource.Layout.Page2, null); v3 = li.Inflate(Resource.Layout.Page3, null); aList = new List<View>(); aList.Add(v1); aList.Add(v2); aList.Add(v3); mAdapter = new ViewPagerAdapter(aList); vPager.Adapter = mAdapter; }}到此,代码完成,运行一下,即可达到模拟器效果。
0 0
- Xamarin.Android ViewPager简单使用
- xamarin android viewpager的用法
- Android中的Viewpager ------ 01(ViewPager的简单使用)
- android viewPager的简单使用案例
- android viewpager和tabpageIndicator简单使用
- Fragment+ViewPager的简单使用 Android
- Android中TabLayout+ViewPager的简单使用
- Xamarin.Android 照相机的使用
- Xamarin Android使用小米推送
- Xamarin.Android SharedPreferences 使用解析
- Xamarin Android教程如何使用Xamarin开发Android应用
- Xamarin开发教程如何使用Xamarin开发Android应用
- Android ViewPager简单实现
- ViewPager的简单使用
- viewpager的简单使用
- ViewPager简单使用
- viewpager的简单使用
- ViewPager的简单使用
- Html设置文本颜色
- iOS系统架构
- 低成本激光线3D扫描
- spring form 提交类型为 enctype="multipart/form-data"时需配置multipartResolver
- 15. Spring Security 权限鉴定结构
- Xamarin.Android ViewPager简单使用
- hdoj--1869--六度分离(floyd)
- Swift下弹出对话框
- HDU-新生赛-ACM组队安排【递推】
- 16. Spring Security 基于表达式的权限控制
- OSX下原生态按钮的Hover状态
- linux-文件系统管理02-分区以及格式化
- 传授人生经验(预处理)
- 邻接表的创建与深搜