iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Android中怎么利用zViewPager实现一个欢迎引导页面
  • 253
分享到

Android中怎么利用zViewPager实现一个欢迎引导页面

androidviewpager 2023-05-30 20:05:30 253人浏览 独家记忆
摘要

这篇文章给大家介绍Android中怎么利用zViewPager实现一个欢迎引导页面,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。项目结构图四、具体的编码实现  布局界面比较简单,加入ViewPager组件,以

这篇文章给大家介绍Android中怎么利用zViewPager实现一个欢迎引导页面,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

项目结构图

Android中怎么利用zViewPager实现一个欢迎引导页面

四、具体的编码实现

  布局界面比较简单,加入ViewPager组件,以及底部的引导小点,activity_main.xml:

<RelativeLayout xmlns:android="Http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"  android:layout_width="wrap_content"  android:layout_height="wrap_content">   <android.support.v4.view.ViewPager  android:id="@+id/viewpager"  android:layout_width="fill_parent"  android:layout_height="fill_parent" />   <LinearLayout  android:id="@+id/ll"  android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:layout_alignParentBottom="true"  android:layout_centerHorizontal="true"  android:layout_marginBottom="24.0dip"  android:orientation="horizontal">   <ImageView   android:layout_width="wrap_content"   android:layout_height="wrap_content"   android:layout_gravity="center_vertical"   android:clickable="true"   android:padding="15.0dip"   android:src="@drawable/point"/>  <ImageView   android:layout_width="wrap_content"   android:layout_height="wrap_content"   android:layout_gravity="center_vertical"   android:clickable="true"   android:padding="15.0dip"   android:src="@drawable/point"/>  <ImageView   android:layout_width="wrap_content"   android:layout_height="wrap_content"   android:layout_gravity="center_vertical"   android:clickable="true"   android:padding="15.0dip"   android:src="@drawable/point"/>  <ImageView   android:layout_width="wrap_content"   android:layout_height="wrap_content"   android:layout_gravity="center_vertical"   android:clickable="true"   android:padding="15.0dip"   android:src="@drawable/point"/>  </LinearLayout> </RelativeLayout>

 2、其中小点的图片用一个selector来控制颜色,point.xml:

<?xml version="1.0" encoding="UTF-8"?> <selector  xmlns:android="http://schemas.android.com/apk/res/android">  <item android:state_enabled="true" android:drawable="@drawable/point_nORMal" />  <item android:state_enabled="false" android:drawable="@drawable/point_select" /> </selector>

ViewPager适配器代码,ViewPagerAdapter.java:

package com.yangyu;  import java.util.ArrayList;  import android.support.v4.view.PagerAdapter; import android.support.v4.view.ViewPager; import android.view.View;   public class ViewPagerAdapter extends PagerAdapter {   //界面列表  private ArrayList<View> views;   public ViewPagerAdapter (ArrayList<View> views){  this.views = views;  }      @Override  public int getCount() {   if (views != null) {   return views.size();   }   return 0;  }     @Override  public Object instantiateItem(View view, int position) {    ((ViewPager) view).addView(views.get(position), 0);    return views.get(position);  }     @Override  public boolean isViewFromObject(View view, Object arg1) {  return (view == arg1);  }     @Override  public void destroyItem(View view, int position, Object arg2) {  ((ViewPager) view).removeView(views.get(position));   } }

 4、主程序入口类,MainActivity.java:

package com.yangyu;  import java.util.ArrayList;  import android.app.Activity; import android.os.Bundle; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageView; import android.widget.LinearLayout;  import com.example.myguideview01.R;   public class MainActivity extends Activity implements OnClickListener,OnPageChangeListener {  //定义ViewPager对象  private ViewPager viewPager;   //定义ViewPager适配器  private ViewPagerAdapter vpAdapter;   //定义一个ArrayList来存放View  private ArrayList<View> views;   //引导图片资源  private static final int[] pics = {R.drawable.guide1,R.drawable.guide2,R.drawable.guide3,R.drawable.guide4};   //底部小点的图片  private ImageView[] points;   //记录当前选中位置  private int currentIndex;   @Override  protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.activity_main);    initView();    initData();  }     private void initView(){  //实例化ArrayList对象  views = new ArrayList<View>();    //实例化ViewPager  viewPager = (ViewPager) findViewById(R.id.viewpager);    //实例化ViewPager适配器  vpAdapter = new ViewPagerAdapter(views);  }     private void initData(){  //定义一个布局并设置参数  LinearLayout.LayoutParams mParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,           LinearLayout.LayoutParams.FILL_PARENT);    //初始化引导图片列表  for(int i=0; i<pics.length; i++) {   ImageView iv = new ImageView(this);   iv.setLayoutParams(mParams);   iv.setImageResource(pics[i]);   views.add(iv);  }    //设置数据  viewPager.setAdapter(vpAdapter);  //设置监听  viewPager.setOnPageChangeListener(this);    //初始化底部小点  initPoint();  }     private void initPoint(){  LinearLayout linearLayout = (LinearLayout) findViewById(R.id.ll);     points = new ImageView[pics.length];   //循环取得小点图片  for (int i = 0; i < pics.length; i++) {   //得到一个LinearLayout下面的每一个子元素   points[i] = (ImageView) linearLayout.getChildAt(i);   //默认都设为灰色   points[i].setEnabled(true);   //给每个小点设置监听   points[i].setOnClickListener(this);   //设置位置tag,方便取出与当前位置对应   points[i].setTag(i);  }    //设置当面默认的位置  currentIndex = 0;  //设置为白色,即选中状态  points[currentIndex].setEnabled(false);  }     @Override  public void onPageScrollStateChanged(int arg0) {   }      @Override  public void onPageScrolled(int arg0, float arg1, int arg2) {   }      @Override  public void onPageSelected(int position) {  //设置底部小点选中状态  setCurDot(position);  }     @Override  public void onClick(View v) {   int position = (Integer)v.getTag();   setCurView(position);   setCurDot(position);   }     private void setCurView(int position){   if (position < 0 || position >= pics.length) {   return;   }   viewPager.setCurrentItem(position);  }     private void setCurDot(int positon){   if (positon < 0 || positon > pics.length - 1 || currentIndex == positon) {   return;   }   points[positon].setEnabled(false);   points[currentIndex].setEnabled(true);    currentIndex = positon;  } }

关于Android中怎么利用zViewPager实现一个欢迎引导页面就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: Android中怎么利用zViewPager实现一个欢迎引导页面

本文链接: https://www.lsjlt.com/news/221342.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Android中怎么利用zViewPager实现一个欢迎引导页面
    这篇文章给大家介绍Android中怎么利用zViewPager实现一个欢迎引导页面,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。项目结构图四、具体的编码实现  布局界面比较简单,加入ViewPager组件,以...
    99+
    2023-05-30
    android viewpager
  • 怎么在Android应用中添加一个欢迎界面
    这篇文章给大家介绍怎么在Android应用中添加一个欢迎界面,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。main_activity.xml文件代码如下:<xml version="1.0&q...
    99+
    2023-05-31
    android 欢迎 roi
  • Android应用怎么实现快速启动欢迎页
    本篇文章为大家展示了Android应用怎么实现快速启动欢迎页,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。设置xml在drawable下建立welcome.xml<&#63;xml v...
    99+
    2023-05-31
    android 欢迎 roi
  • vue中怎么利用SPA实现一个单页面应用
    vue中怎么利用SPA实现一个单页面应用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、SPA的概述SPA(single page appl...
    99+
    2024-04-02
  • 如何在Android中利用Intent实现一个页面跳转功能
    本篇文章为大家展示了如何在Android中利用Intent实现一个页面跳转功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Intent实现页面之间跳转1、无返回值startActivity(int...
    99+
    2023-05-30
    android intent
  • 怎么在Android应用中利用ActionBar实现一个导航栏功能
    怎么在Android应用中利用ActionBar实现一个导航栏功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Action Bar是一种新増的导航栏功能,在Android 3...
    99+
    2023-05-31
    android actionbar roi
  • 怎么在Android中利用ItemDecoration 实现一个分组索引列表
    怎么在Android中利用ItemDecoration 实现一个分组索引列表?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。分组 GroupHeader分割线SideBar前两个...
    99+
    2023-05-30
    android itemdecoration
  • 怎么用react实现引导页
    本教程操作环境:Windows10系统、react18.0.0版、Dell G3电脑。怎么用react实现引导页?前言眼看很多公司都开始尝试使用ReactNative,达到跨平台开发,最近也写了很多文章,希望让更多想了解的同学快速上手Rea...
    99+
    2023-05-14
    React
  • Android应用中怎么实现一个滑动切换页面功能
    Android应用中怎么实现一个滑动切换页面功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 TabLayou 主要实现的是标题头的 滑动 这个 控件 类似于 Sc...
    99+
    2023-05-31
    android roi
  • Android开发中利用ListView怎么实现一个分页加载功能
    这期内容当中小编将会给大家带来有关Android开发中利用ListView怎么实现一个分页加载功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。具体如下:package eoe.listview;impo...
    99+
    2023-05-31
    android 分页加载 listview
  • 怎么在Android应用中利用RecyclerView实现一个分页滚动功能
    怎么在Android应用中利用RecyclerView实现一个分页滚动功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、需求分析最近公司项目要实现一个需求要满足以下功能...
    99+
    2023-05-31
    android recyclerview recycle
  • 怎么在android应用中利用ViewPager实现一个滑动翻页效果
    这期内容当中小编将会给大家带来有关怎么在android应用中利用ViewPager实现一个滑动翻页效果,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。实现ViewPager的滑动翻页效果可以使用ViewPa...
    99+
    2023-05-31
    viewpager android age
  • 怎么在android应用中利用Fragment与RadioButton实现一个底部导航栏
    本篇文章为大家展示了怎么在android应用中利用Fragment与RadioButton实现一个底部导航栏,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。首先我们先在activity_mian.xm...
    99+
    2023-05-31
    fragment android roi
  • 怎么在SpringBoot利用Mybatis实现一个登录注册页面
    怎么在SpringBoot利用Mybatis实现一个登录注册页面?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。环境jdk8 : “1.8.0_281”Maven...
    99+
    2023-06-06
  • 如何在Android中利用RecyclerView实现一个聊天界面
    这篇文章给大家介绍如何在Android中利用RecyclerView实现一个聊天界面,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。具体内容如下首先在app/build.gradle(注意有两个build.gradle,...
    99+
    2023-05-30
    android recyclerview
  • PHP中怎么实现一个静态页面
    这篇文章将为大家详细讲解有关PHP中怎么实现一个静态页面,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一,PHP脚本与动态页面。PHP脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML文...
    99+
    2023-06-17
  • Android中怎么利用EasyBarrage实现一个弹幕效果
    Android中怎么利用EasyBarrage实现一个弹幕效果,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。概述EasyBarrage是Android平台的一种轻量级弹幕效...
    99+
    2023-05-30
    android easybarrage
  • 怎么在Android中利用Activity实现一个监听器
    怎么在Android中利用Activity实现一个监听器?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Activity在Activity中,使用findViewById(int...
    99+
    2023-06-14
  • 怎么在Android中实现一个无网络页面切换功能
    怎么在Android中实现一个无网络页面切换功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。实现思路需求是在无网络的时候显示特定的页面,想到要替换页面的地方,大多都是recy...
    99+
    2023-05-30
    android
  • vue实现弹窗引用另一个页面窗口
    目录弹窗引用另一个页面窗口弹窗如何嵌入其它页面A页面(父页面)B页面(子页面)弹窗引用另一个页面窗口 需求:在一个主页面A.vue上点击按钮时弹出一个窗口,该窗口的定义在B.vue,...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作