博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android关于实现滑动界面
阅读量:5034 次
发布时间:2019-06-12

本文共 1727 字,大约阅读时间需要 5 分钟。

首先要说的是,滑动界面,我们需要一个以上的view切换,实际上可以使用ArrayList<View> pageViews要保存view信息,然后切换

LayoutInflater inflater = getLayoutInflater();		pageViews = new ArrayList
(); pageViews.add(inflater.inflate(R.layout.item01, null)); pageViews.add(inflater.inflate(R.layout.item02, null)); pageViews.add(inflater.inflate(R.layout.item03, null));
然后定义每个item01,item02,item03的xml文件

我在上面写的是一个比較简单的imageview来做一个item,

这里不得不说必须定义一个class GuidPageChangeListener 继承 OnPageChangeListener的接口来实现view之间的切换

public void onPageSelected(int arg0) {			// TODO Auto-generated method stub			for (int i = 0; i < imageViews.length; i++) {				imageViews[arg0]						.setBackgroundResource(R.drawable.page_indicator_focused);				if (arg0 != i) {					imageViews[i]							.setBackgroundResource(R.drawable.page_indicator);				}			}		}
这里还须要一个适配器PagerAdapter类。我们写一个自己的类来继承它

class GuidPageAdapter extends PagerAdapter 

主要引用的方法例如以下

class GuidPageAdapter extends PagerAdapter {		@Override		public int getCount() {			// TODO Auto-generated method stub			return pageViews.size();		}		@Override		public boolean isViewFromObject(View arg0, Object arg1) {			// TODO Auto-generated method stub			return arg0 == arg1;		}		@Override		public void destroyItem(View arg0, int arg1, Object arg2) {			// TODO Auto-generated method stub			((ViewPager) arg0).removeView(pageViews.get(arg1));		}		@Override		public Object instantiateItem(View arg0, int arg1) {			// TODO Auto-generated method stub			((ViewPager) arg0).addView(pageViews.get(arg1));			return pageViews.get(arg1);		}	}
这样就能够实现一个简单的view左右滑动的切换,这个切换时全屏幕的切换,关于半屏的滑动切换后面再续

转载请注明出处

版权声明:本文博客原创文章,博客,未经同意,不得转载。

转载于:https://www.cnblogs.com/hrhguanli/p/4652315.html

你可能感兴趣的文章
【★】KMP算法完整教程
查看>>
谈谈关键字new
查看>>
.Net小白的第一篇博客
查看>>
12.1 客户端请求编码
查看>>
自学JAVA-10:集合
查看>>
有关oracle遇到日期显示问题,导入导出,安装,卸载,修改listener配置文件,创建用户和表空间等的部分问题....
查看>>
NSSet
查看>>
分治法-全排列问题
查看>>
POJ-3069
查看>>
install virtual enviroment on windows
查看>>
第一章 线性回归
查看>>
LeetCode-85 Maximal Rectangle
查看>>
ListView 分页显示(转载+修改)上
查看>>
JqGrid在IE8中表头不能分组的解决办法
查看>>
[kylin] 部署kylin服务
查看>>
学习进度条
查看>>
DP 之 codeforces 416B
查看>>
PHP并发情况下如何防止商品礼品超卖、超发等情况
查看>>
2012、10、05 听课笔记
查看>>
Newtonsoft.Json 将C#对象转化为json格式
查看>>