一、效果图

Android小项目之欢迎滑动页面(最简洁方法)_第1张图片
Android小项目之欢迎滑动页面(最简洁方法)_第2张图片
Android小项目之欢迎滑动页面(最简洁方法)_第3张图片

二、源码

1.activity_welcome_guide.xml

<?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:orientation="vertical" >    <android.support.v4.view.ViewPager  android:id="@+id/welcome_pager" android:layout_width="match_parent" android:layout_height="match_parent" />    <Button  android:id="@+id/welcome_guide_btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="80dp" android:background="@mipmap/guide_button" android:paddingLeft="30dp" android:paddingRight="30dp" android:visibility="gone" /></RelativeLayout>

2.WelcomeGuideActivity.java

/** * 滑动页面 * * @author Guan * @file com.guan.dianping.activity * @date 2015/11/3 * @Version 1.0 */public class WelcomeGuideActivity extends FrameActivity {    @ViewInject(R.id.welcome_guide_btn)    private Button btn;    @ViewInject(R.id.welcome_pager)    private ViewPager pager;    private List<View> list;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_welcome_guide);        ViewUtils.inject(this);        init();        initViewPager();    }    @OnClick(R.id.welcome_guide_btn)    public void click(View view) {        //页面的跳转        startActivity(new Intent(getBaseContext(), MainActivity.class));        finish();    }    //初始化    public void init() {        list = new ArrayList<View>();    }    //初始化ViewPager的方法    public void initViewPager() {        ImageView iv1 = new ImageView(this);        iv1.setImageResource(R.mipmap.guide_01);        ImageView iv2 = new ImageView(this);        iv2.setImageResource(R.mipmap.guide_02);        ImageView iv3 = new ImageView(this);        iv3.setImageResource(R.mipmap.guide_03);        list.add(iv1);        list.add(iv2);        list.add(iv3);        pager.setAdapter(new MyPagerAdapter());        //监听ViewPager滑动效果        pager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {            //页卡被选中的方法            @Override            public void onPageSelected(int arg0) {                //如果是第三个页面                if (arg0 == 2) {                    btn.setVisibility(View.VISIBLE);                } else {                    btn.setVisibility(View.GONE);                }            }            @Override            public void onPageScrolled(int arg0, float arg1, int arg2) {            }            @Override            public void onPageScrollStateChanged(int arg0) {            }        });    }    //定义ViewPager的适配器    class MyPagerAdapter extends PagerAdapter {        //计算需要多少item显示        @Override        public int getCount() {            return list.size();        }        @Override        public boolean isViewFromObject(View arg0, Object arg1) {            return arg0 == arg1;        }        //初始化item实例方法        @Override        public Object instantiateItem(ViewGroup container, int position) {            container.addView(list.get(position));            return list.get(position);        }        //item销毁的方法        @Override        public void destroyItem(ViewGroup container, int position, Object object) {            // 注销父类销毁item的方法,因为此方法并不是使用此方法// super.destroyItem(container, position, object);            container.removeView(list.get(position));        }    }}

更多相关文章

  1. Android五种隐藏状态栏和标题栏的方法
  2. The import com.google cannot be resolved解决方法
  3. 在Android中解析ls 命令得到目录列表的方法
  4. Android统计EditText的字母数字以及汉字的统计方法
  5. Android setContentView方法解析(一)

随机推荐

  1. 意派Epub360丨【活动】黑科技的双11新玩
  2. 20211109作业
  3. 11月9日常用标签
  4. NPM包管理工具、webpack模块打包器体验
  5. vuex的commit没有返回值,数据创建后,检查是
  6. 如何画动物?卡通动物的画法!
  7. h5标签学习
  8. HTML常用标签第一天
  9. 大前端1109笔记
  10. 20211109-788331作业