详谈侧滑页面ViewPager的使用
来源:互联网 发布:ubuntu win10启动项 编辑:程序博客网 时间:2024/05/01 14:49
大家好,这讲给大家带来的是侧滑页面的使用,我们在使用刚下载的app,第一次打开app运用的时候,就会有侧滑页面的出现,它主要是介绍本款的app的功能,以及有关app的东西。当你第二次打开时,它就不会再出现了。viewPager功能实现就是这样,相信大家脑里也有清晰的画面,想象不到位,没关系。我下面截有图片,加深对viewPager印象。
看完这三幅图片,大家肯定心里觉得这是很难做的,其实不难,能正确使用ViewPager工具,分分钟搞定。
1.res/layout/activity_guide.xml布局文件
<RelativeLayout 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" >
//viewPager是v4下的工具类,所有它的控件属性与其他大有不同
<android.support.v4.view.ViewPager
android:id="@+id/guide_vp"
android:layout_width="match_parent"
android:layout_height="match_parent" />
//把开始体验按钮隐藏,等需要显示在显示出来,这个控件使用了选择器,在下文我会详解
<Button
android:id="@+id/guide_btn"
android:visibility="invisible"
android:layout_width="135dp"
android:layout_height="45dp"
android:layout_alignParentBottom="true"
android:layout_centerInParent="true"
android:layout_marginBottom="40dp"
android:background="@drawable/guide_drawable_select"
android:text="开始体验"
android:onClick="enterSystem"
android:textColor=“#ffffffff" />
</RelativeLayout>
2.GuideActivity.java
public class GuideActivity extends Activity {
private ViewPager mViewPager;
private List<ImageView> mPagerList;//定义List,类型是ImageView
private Context context;
private Button mGuideBtn;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//去标题
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_guide);
//初始化控件
context = this;
mViewPager = (ViewPager) findViewById(R.id.guide_vp);
mGuideBtn = (Button) findViewById(R.id.guide_btn);
//初始化集合List,类型是ImageView
mPagerList = new ArrayList<ImageView>();
//第一个页面图片
ImageView pageImage1 = new ImageView(context);
//设置背景图片
pageImage1.setBackgroundResource(R.drawable.guide_1);
//ImageView添加到集合List里
mPagerList.add(pageImage1);
//第二个页面图片
ImageView pageImage2 = new ImageView(context);
pageImage2.setBackgroundResource(R.drawable.guide_2);
mPagerList.add(pageImage2);
//第三个页面图片
ImageView pageImage3 = new ImageView(context);
pageImage3.setBackgroundResource(R.drawable.guide_3);
mPagerList.add(pageImage3);
//设置mViewPager页面适配器,好比listVIew的适配器,list.setAdapter()
mViewPager.setAdapter(new PagerAdapter() {
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
//返回 视图等于对象
return arg0 == arg1;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
//集合的个数
return mPagerList == null ? 0 : mPagerList.size();
}
//销毁方法
public void destroyItem(ViewGroup container, int position,
Object object) {
//删除的是一个容器,这里指的是ImageView
container.removeView(mPagerList.get(position));
//没有返回值,说明这里没有ViewPager了
}
//实例化方法,也就是添加在容器里添加视图
public Object instantiateItem(ViewGroup container, int position) {
//添加视图,也是Imageview
container.addView(mPagerList.get(position));
//返回操作页面
return mPagerList.get(position);
}
});
//viewPager监听交互,改变页面的监听
mViewPager.setOnPageChangeListener(new OnPageChangeListener() {
public void onPageSelected(int position) {
//获取总页面索引号
int page = mPagerList.size() - 1;
//判断,当下标值等于总页面的索引号时
if (page == position) {
//显示按钮
mGuideBtn.setVisibility(View.VISIBLE);
} else {
//按钮消失
mGuideBtn.setVisibility(View.GONE);
}
}
//页面滑动
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
//页面状态改变
public void onPageScrollStateChanged(int arg0) {
}
});
}
//点击事件
public void enterSystem(View v) {
Intent intent = new Intent(GuideActivity.this, SplashActivity.class);
startActivity(intent);
finish();
}
}
3.res/drawable/guide_drawable_select.xml选择器
<selector xmlns:android="http://schemas.android.com/apk/res/android">
//点击的时候显示的图片
<item android:drawable="@drawable/ticket_btn_cancel_normal" android:state_pressed="true"></item>
//正常的时候显示的图片
<item android:drawable="@drawable/ticket_btn_cancel_pressed" ></item>
</selector>
好了,这讲就到了,viewPager的使用,大家以后开发经常会用到,留心学习。88
- 详谈侧滑页面ViewPager的使用
- JSP的页面自定义函数详谈不使用JAVABEAN
- 【页面滑动】ViewPager的使用
- Git的使用详谈
- ViewPager的详解(使用viewPager实现导航页面)
- fragment+ViewPager的使用(页面的滑动切换)
- ViewPager实现页面滑动的学习与使用
- Android 滑动页面的实现,ViewPager使用详解
- 使用ViewPager设置适配器FragmentPagerAdapter出现页面空白的问题
- Android中使用ViewPager实现一屏多页面的功能
- ViewPager导航页面,开源框架ultraviewpager的使用
- 安卓app页面跟随手指滑动而切换 ViewPager的使用 ViewPager+Fragment
- ViewPager中ViewPager的使用
- ViewPager滑动页面的制作
- TabLayout + ViewPager 的滑动页面
- 使用DrawerLayout实现侧滑菜单,,RadioButton+Fragment实现页面主布局,首页面使用tabLayout+viewPager实现
- 实现页面侧滑的两种方式GestureDetector和ViewPager
- android scrollview 嵌套 Viewpager, Viewpager 不能动态的设置高度,一直使用第一个fragment页面的高度
- HDU5003-Osu!-AsiaRegionalAnshanOnline2014
- 修改view的x,y,width,height值的方法
- Unable to locate the model you have specified
- 从沙盒中取出被保存的图片
- 安卓页面点击跳转intent
- 详谈侧滑页面ViewPager的使用
- Android五分钟让你集成底部菜单栏(fragment或者fragment+viewpager)
- Android基础之intent-filter、action、category标签使用
- hdoj 3879 Base Station 【最小割 之 最大权闭合图】
- Android UI设计——ViewPage中自定义标题栏(四)
- shell脚本检测主机是否存活
- Sandbox Evasion with COM by Malware in-the-Wild
- 用序列之王splay解决线段树经典问题
- 2015多校联合第六场 hdu5360hiking