Android-ViewPager使用示例(二)
2015-08-29 14:28
405 查看
根据上一篇Android-ViewPager使用示例
本篇介绍导航点
工程目录结构
核心代码段:
Guide.java
guide.xml
注意1:监听OnPageChangeListener
注意2:注意png图片不能太大
其他部分代码请参考‘Android-ViewPager使用示例’
效果图:
第一页
第二页
需要原码请留言,看到速回
本篇介绍导航点
工程目录结构
核心代码段:
Guide.java
[code]package com.example.viewpager; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.view.LayoutInflater; import android.view.View; import android.widget.ImageView; public class Guide extends Activity implements OnPageChangeListener { ViewPager mViewPager; ViewPagerAdapter mViewPagerAdapter; List<View> views; // 找到三个ImageView private ImageView[] mDots; // 找到三个ID private int ids[] = { R.id.d1, R.id.d2, R.id.d3 }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.guide); initViews(); initDots(); } void initViews() { LayoutInflater inflater = LayoutInflater.from(this); views = new ArrayList<View>(); views.add(inflater.inflate(R.layout.one_layout, null)); views.add(inflater.inflate(R.layout.two_layout, null)); views.add(inflater.inflate(R.layout.three_layout, null)); mViewPagerAdapter = new ViewPagerAdapter(views, this); // 实现mViewPager mViewPager = (ViewPager) findViewById(R.id.viewPager); mViewPager.setAdapter(mViewPagerAdapter); // 监听翻页 mViewPager.setOnPageChangeListener(this); } private void initDots() { mDots = new ImageView[views.size()]; for (int i = 0; i < views.size(); i++) { mDots[i] = (ImageView) findViewById(ids[i]); } } @Override public void onPageScrollStateChanged(int arg0) { // 当滑动状态改变时调用 } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { // 当页面被滑动时调用 } @Override public void onPageSelected(int arg0) { // 当前新的页面被选中时调用 for (int i = 0; i < ids.length; i++) { if(arg0 == i){ mDots[i].setImageResource(R.drawable.page_indicator_pressed); }else{ mDots[i].setImageResource(R.drawable.page_indicator_normal); } } } }
guide.xml
[code]<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <android.support.v4.view.ViewPager android:id="@+id/viewPager" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#90EE90" > </android.support.v4.view.ViewPager> <LinearLayout android:id="@+id/ll" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:gravity="center_horizontal" android:orientation="horizontal" > <ImageView android:id="@+id/d1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/page_indicator_normal" /> <ImageView android:id="@+id/d2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/page_indicator_normal" /> <ImageView android:id="@+id/d3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/page_indicator_pressed" /> </LinearLayout> </RelativeLayout>
注意1:监听OnPageChangeListener
注意2:注意png图片不能太大
其他部分代码请参考‘Android-ViewPager使用示例’
效果图:
第一页
第二页
需要原码请留言,看到速回
相关文章推荐
- [转]Android布局文件layout.xml的一些属性值
- Android Studio基本配置
- Android Studio基本配置
- material design 的android开源代码整理
- Gradle, Android and the ANDROID_HOME SDK location
- 用Gradle 构建你的android程序
- Android RecyclerView 使用完全解析 体验艺术般的控件
- Android定义生命周期的优点
- XX日历简单逆向分析
- Android-Fragment的onActivity诡异Bug
- Android几个关于Gesture的问题
- Android Api Demos登顶之路(五十二)Search
- Android基础入门教程——5.2.2 Fragment实例精讲——底部导航栏的实现(方法2)
- Android-Fragment与Fragment之间数据获取
- Android Service与Thread详解
- Android ProgressBar自定义图片进度,自定义渐变色进度条
- Android文本输入框EditText属性和方法说明
- Android-Universal-Image-Loader学习笔记(一)
- Android实现将Drawable资源ID存储到Sdcard上
- [Android Studio] *.jar 与 *.aar 的生成与*.aar导入项目方法