这篇文章主要为大家详细介绍了Android实现启动引导图,文中示例代码介绍的非常详细,具有为大家详细一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了Android实现启动引导图的具体代码,供大家参考,具体内容如下
下面是安卓启动引导图的实现,话不多说,直接上代码。
1.布局文件:activity_guide.xml
2.关于的ViewPager的适配器GuidePageAdapter.java
/** * Created by gdk on 2019/7/22 14:55 * Describe:安装apk第一次启动的引导页 * * @author gdk */ public class GuidePageAdapter extends PagerAdapter { //存放图片的集合 private ListviewList; public GuidePageAdapter(List viewList) { this.viewList = viewList; } /** * @return 返回页面的个数 */ @Override public int getCount() { if (viewList != null) { return viewList.size(); } return 0; } /** * 判断对象是否生成界面 * * @param view * @param object * @return */ @Override public boolean isViewFromObject(View view, Object object) { return view == object; } /** * 初始化position位置的界面 * * @param container * @param position * @return */ @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(viewList.get(position)); return viewList.get(position); } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(viewList.get(position)); } }
3.引导页的Activity,GuideActivity.java
/** * 第一次安装的引导页 * Created by gdk on 2019-07-22 * * @author gdk */ public class GuideActivity extends BaseActivityimplements LoginContract.View, ViewPager.OnPageChangeListener { @BindView(R.id.guide_ib_start) ImageButton guideIbStart; @BindView(R.id.guide_vp) ViewPager guideVp; @BindView(R.id.ll_guide_point) LinearLayout llGuidePoint; private int[] imagePositionArray;//图片资源的数组 private List viewList;//图片资源的集合 //实例化原点View private ImageView iv_point; private ImageView[] ivPointArray; @Override public int getLayoutId() { return R.layout.activity_guide; } @Override public LoginContract.Presenter initPresenter() { return new LoginPresenter(this); } @Override public void initView() { //加载滑动的ViewPager initViewPager(); //加载底部圆点 initPoint(); } @OnClick({R.id.ll_guide_point, R.id.guide_ib_start}) public void onViewClicked(View view) { switch (view.getId()) { case R.id.guide_ib_start: //从启动页跳转到引导页,修改保存的值,再次进入时跳过此页面。 SpUitlsInfo.putString(GuideActivity.this, "VERSION", "1"); startActivity(new Intent(GuideActivity.this, MainActivity.class)); break; default: break; } } /** * 加载底部圆点 */ private void initPoint() { //这里实例化LinearLayout llGuidePoint = findViewById(R.id.ll_guide_point); //根据ViewPager的item数量实例化数组 ivPointArray = new ImageView[viewList.size()]; //循环新建底部圆点ImageView,将生成的ImageView保存到数组中 int size = viewList.size(); for (int i = 0; i (); //获取一个Layout参数,设置为全屏 LinearLayout.LayoutParams params = new LinearLayout.LayoutParams( LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT); //循环创建View并加入到集合中 int len = imagePositionArray.length; for (int i = 0; i
涉及到两个布局文件
guide_dot_select.xml
guide_dot_unselect.xml
4.总结,代码中的注释比较详细,各位博友都能看懂,没有效果图,里面涉及的图片请使用简单的替代就行。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持0133技术站。
以上就是Android实现启动引导图的详细内容,更多请关注0133技术站其它相关文章!