Android 引导页
activity.xml:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"><android.support.v4.view.ViewPagerandroid:id="@+id/viewpager"android:layout_width="match_parent"android:layout_height="match_parent"></android.support.v4.view.ViewPager></android.support.constraint.ConstraintLayout>
在创建三个引导页面,guide_one,guide_two,guide_three:
guide_one.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical" android:layout_width="match_parent"android:layout_height="match_parent"android:background="@drawable/ic_shenone"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="一"android:textSize="60dp"android:layout_centerInParent="true"android:textColor="#03fa72"/></RelativeLayout>
guide_two和one时一样的,只是导入图片不同而已,重点在第三个 guide_three
gudie_three.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@drawable/ic_shenthree"><Buttonandroid:id="@+id/btn_queding"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="立即体验"android:textSize="50dp"android:layout_alignParentBottom="true"android:layout_centerHorizontal="true"android:layout_marginBottom="60dp"android:background="#07e4f4"android:textColor="#ffffff"/></RelativeLayout>
activity_guide.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".GuideActivity"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_centerInParent="true"android:text="Hello World!"android:textSize="30dp"/></RelativeLayout>
GuideActivity.java 不变,我这里就不列举了!
MainActivity.java
public class MainActivity extends AppCompatActivity {private ViewPager viewPager;private View viewOne,viewTwo,viewThree; // 三个滑动界面对应三个 view 对象private ArrayList<View> viewArrayList = null;private MyPagerAdapter adapter = null;private Button button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);viewPager = findViewById(R.id.viewpager);/** 获取三个布局文件,生成 View 对象**/LayoutInflater inflater = getLayoutInflater();viewOne = inflater.inflate(R.layout.guide_one,null);viewTwo = inflater.inflate(R.layout.guide_two,null);viewThree = inflater.inflate(R.layout.guide_three,null);viewArrayList = new ArrayList<>();viewArrayList.add(viewOne); // 构建显示组件列表viewArrayList.add(viewTwo);viewArrayList.add(viewThree);adapter = new MyPagerAdapter(viewArrayList);viewPager.setAdapter(adapter); //添加适配器button = viewThree.findViewById(R.id.btn_queding);button.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent intent = new Intent(MainActivity.this,GuideActivity.class);startActivity(intent);MainActivity.this.finish();}});}
}
MyPagerAdapter.java
public class MyPagerAdapter extends PagerAdapter {private ArrayList<View> pageList=null; // 接收构造方法中传来的 view 列表public MyPagerAdapter(ArrayList<View> pageList) {this.pageList = pageList;}@Overridepublic int getCount() {return pageList.size(); // 返回 view 列表的大小,即 view 的数目}@Overridepublic boolean isViewFromObject(@NonNull View view, @NonNull Object o) {return view == o;}@NonNull@Overridepublic Object instantiateItem(@NonNull ViewGroup container, int position) {View pageView = pageList.get(position); // 获取当前位置的 viewcontainer.addView(pageView); // 设置当前 view 为显示对象return pageView;}@Overridepublic void destroyItem(@NonNull ViewGroup container, int position, @NonNull Object object) {container.removeView(pageList.get(position)); // 移除当前位置的 view}
}
Android 引导页相关推荐
- Android 引导页开发管理2
<Android 引导页开发管理1>说明的是连续页面的闪烁效果,本次文章显示的是,一张效果效果图等待3s后进入主页面. 后续开发可以显示一段flash或者其他效果图看看. 1.splash ...
- Android开发--实现Android引导页
几乎每个app都有引导页,下面我们来做一个引导页的实现. 引导页,是指软件首次进入或者更新完成后,软件显示的页面,一般展示软件特色功能或者更新的内容. 先判断是否第一次启动app,如果是,则进入引导页 ...
- Android引导页图片拉伸问题
程序启动时候通过设置主体Theme的方式设置引导页,这样会使程序视觉上启动较快,不卡顿,参考以下链接: https://blog.csdn.net/Mr_Tony/article/details/10 ...
- android引导页自动轮播,Android使用ViewPager实现自动轮播
很多APP中都实现了类似引导页的自动轮播,不由得想到昨天的引导页上修改一下代码实现轮播. 其实大体上只需要添加一个线程循环执行就可以了. 同样的先上图 直接上代码,注释都全的,我想这样更有利于理解. ...
- android 启动页大小,android引导页大图
引导页图片一般采用本地图片打包在APK中,并且显示大小为整个屏幕,所以在显示引导页图片时有以下几点需要注意: 1. 最好使用多个尺寸的引导页来保证适配效果,比如在drawable-hdpi, draw ...
- android引导页大小,Android:启动引导页实现
2 android:layout_width=match_parent 3 android:layout_height=match_parent > 4 5 6 android:id=@+id/ ...
- android引导页图片全屏适配,关于图片适配不同尺寸的image View(实战)
分享人:广州华软佐罗 一. 前言 在前端开发过程中,设计稿中往往只提供一张图片,但是app内需要用到的尺寸各种各样. 同时图片不仅是信息的直接表达,也会为网站起到美观点缀的作用,图片的变形.过分裁切会 ...
- java中引导页面的,Android实现欢迎引导页面
现在的大多数应用都会有一个欢迎引导页面, 需求分析: 程序安装后第一次启动: 启动页-->功能引导页-->应用主页 以后启动: 启动页-->应用主页 实现原理: 用SharedPre ...
- Android进阶篇之引导页系列之ViewPager实现Animation动画引导页
Android进阶篇之引导页系列之ViewPager实现Animation动画引导页 转载于:https://www.cnblogs.com/zhujiabin/p/5795789.html
- Android APP 引导页实现-第一次应用进入时加载
APP引导页是每个优质APP必备的元素,下面我们研究一下如何只在第一次进入应用时进行加载引导页的方法. 1.判断是否第一次进入应用的方法: package com.yayun.guide;import ...
最新文章
- python 可以 从视频中 直接剪辑音频出来(亲测MP4)
- 谈谈Java中的volatile
- html设置字体整体放大,请教怎么样可以只放大或缩小内容层里的字体呢?我不想让整页都放大缩小。请指教!谢谢!_html/css_WEB-ITnose...
- css样式重置,不建议用通配符
- 查询oracle表上重复的数据库,如何确定Oracle数据库表重复的记录
- 软件项目组织管理(二、三)项目管理与信息技术环境、项目管理过程组
- Java实现AVL平衡树
- pig:group by之后的其它统计方法一
- C语言------指针
- grayscale实现全站及局部变黑的效果 – 兼容IE/FF等浏览器
- Python Imaging Library: ImageQt Module(图像QT模块)
- Comparable和Comparator
- asp功放怎么装_客厅家庭影院该怎么摆放?
- bzoj 4094: [Usaco2013 Dec]Optimal Milking
- linux下挂载共享目录,linux下挂载windows的共享目录
- 如何理解Spring中的IOC和AOP
- 用报表工具Style Report制作排名前N名的分组报表
- Android基础入门教程——7.6.3 基于TCP协议的Socket通信(2)
- mvn 命令上传文件到 Maven 仓库
- fu7推挽胆机音质_fu7电子管功放电路图大全(6N8P\6P3P\胆机功放电路\耦合电容器)...
热门文章
- Merge Two Sorted Lists Leetcode
- 转]python 结巴分词(jieba)学习
- 手动编译Spring4.2源码,以及把源码导入myEclipse中
- [[UIScreen mainScreen] bounds] 返回的屏幕尺寸不对
- Linux下的C程序如何调用系统命令,并获取系统的输出信息到C程序中
- ASP.NET MVC3 中整合 NHibernate3.3、Spring.NET2.0 使用AOP执行事务处理
- 幸福框架:可扩展的应用程序 “启动引导” 框架
- xapian_binaries
- 情感分析技术在美团的探索与应用
- 【损失函数】常见的损失函数(loss function)总结