博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ViewPager
阅读量:4686 次
发布时间:2019-06-09

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

package com.k1.description;import java.util.HashMap;import java.util.Map;import android.os.Bundle;import android.support.v4.view.PagerAdapter;import android.support.v4.view.ViewPager;import android.support.v4.view.ViewPager.OnPageChangeListener;import android.view.View;import android.view.View.OnClickListener;import android.view.ViewGroup;import android.view.animation.AlphaAnimation;public class WelcomeActivity extends BaseActivity {    private static final int[] PAGERS = new int[] { R.layout.activity_welcome_pager1, R.layout.activity_welcome_pager4,            R.layout.activity_welcome_pager1, R.layout.activity_welcome_pager4, R.layout.activity_welcome_pager1 };    private ViewGroup mPoints;    private int mLast = 0;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_welcome);        mPoints = (ViewGroup) findViewById(R.id.points);//滑动时移动的圆点        View view = mPoints.getChildAt(0);        view.setBackgroundResource(R.drawable.point_selected);        ViewPager vp = (ViewPager) findViewById(R.id.viewpager);        vp.setAdapter(new PagerAdapter() {            Map
viewMap = new HashMap
(); @Override public int getCount() { return 5; } @Override public void destroyItem(ViewGroup container, int position, Object object) { ((ViewPager) container).removeView(viewMap.get(position)); } @Override public Object instantiateItem(ViewGroup container, int position) { View view = viewMap.get(position); if (view == null) { view = getLayoutInflater().inflate(PAGERS[position], null); AlphaAnimation a = new AlphaAnimation(0.5f, 1); a.setDuration(300); view.startAnimation(a); viewMap.put(Integer.valueOf(position), view); } ((ViewPager) container).addView(view); return view; } @Override public boolean isViewFromObject(View arg0, Object arg1) { return arg0 == arg1; } @Override public int getItemPosition(Object object) { return super.getItemPosition(object); } }); vp.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int position) { for (int i = 0; i < mPoints.getChildCount(); i++) { View view = mPoints.getChildAt(i); if (i == mLast) { view.setBackgroundResource(R.drawable.point_unselected); } if (i == position) { view.setBackgroundResource(R.drawable.point_selected); } } mLast = position; } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { } @Override public void onPageScrollStateChanged(int arg0) { } }); }}

 

转载于:https://www.cnblogs.com/g-sheng/p/5412289.html

你可能感兴趣的文章
【NOIP2017】列队【可持久化线段树】
查看>>
python学习——通过while循环语句实现九九乘法表的四种表达方式
查看>>
[解题报告] 100 - The 3n + 1 problem
查看>>
MvvmCross[翻译] 使用Xamarin与MvvmCross完成一个跨平台App
查看>>
Entity Framework 学习高级篇1—改善EF代码的方法(上)
查看>>
027-chown命令
查看>>
Python 线程、进程和协程
查看>>
赛普系统自动拨号
查看>>
platform_device与platform_driver
查看>>
[iOS] iPad与iPhone上各种标准控件的大小
查看>>
动态规划(游船费用问题)
查看>>
[原创]Windows利用BitNami搭建Redmine
查看>>
Mybatis逆向工程配置文件详细介绍(转)
查看>>
Linux命令学习一日一命令(RM)
查看>>
5-1
查看>>
一名3年工作经验的程序员应该具备的技能 -- 转载
查看>>
重回博客园有感
查看>>
【转】java事件监听机制
查看>>
Leetcode 423.从英文中重建数字
查看>>
数组 Arrays类
查看>>