使用ViewPager模拟实现应用程序启动界面(二)
2013-07-19 16:32
525 查看
上一篇主要失去实现启动滑屏(点击进入),这个功能一般都在第一次启动应用的时候,进行对新功能的介绍来来使用,今天同样是这种功能,不过在上次的基础上面加入,在滑到最后一个界面的时候,点击按钮跳转到主界面的效果。
还是首先先看效果图:
项目结构如下:
我们要实现这样的功能其实比较简单的,理解完前三篇文章就行,现在正是开始创建
1:我们要创建四个布局文件,里边全不是背景图片,进行滑动显示(其中第四个比较特殊,里面还包括一个Button按钮)布局文件比较简单
2:主界面的布局为logo.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/liear"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="50dip"
android:orientation="horizontal" >
<ImageView
android:id="@+id/point_01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:padding="5dip"
android:src="@drawable/sysclear_ic_storage_used" />
<ImageView
android:id="@+id/point_02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:padding="5dip"
android:src="@drawable/sysclear_ic_storage_left" />
<ImageView
android:id="@+id/point_03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:padding="5dip"
android:src="@drawable/sysclear_ic_storage_left" />
<ImageView
android:id="@+id/point_04"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:padding="5dip"
android:src="@drawable/sysclear_ic_storage_left" />
</LinearLayout>
</RelativeLayout> 3:创建LogoActivity.java进行显示实现,ViewerPager.把View加入到集合中,进行ViewPagerAdapter适配,重点代码如下:
package com.jiangqq.myweixindemo;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import com.jiangqq.adapter.MyViewePagerAdapter;
public class LogoActivity extends Activity {
private List<View> mLists=new ArrayList<View>();
private ViewPager mViewPager;
private MyViewePagerAdapter adapter;
private Button mButton;
private LayoutInflater mLayoutInflater;
private LinearLayout mLinearLayout;
private int current=0;
private ImageView[] points=new ImageView[4];
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.logo);
mLayoutInflater=LayoutInflater.from(this);
mLinearLayout=(LinearLayout)this.findViewById(R.id.liear);
mViewPager=(ViewPager)this.findViewById(R.id.viewpager);
View view1=mLayoutInflater.inflate(R.layout.layout_01, null);
View view2=mLayoutInflater.inflate(R.layout.layout_02, null);
View view3=mLayoutInflater.inflate(R.layout.layout_03, null);
View view4=mLayoutInflater.inflate(R.layout.layout_04, null);
mButton=(Button)view4.findViewById(R.id.btn_start);
mButton.setOnClickListener(new MySetOnClickListener());
mLists.add(view1);
mLists.add(view2);
mLists.add(view3);
mLists.add(view4);
adapter=new MyViewePagerAdapter(mLists);
mViewPager.setAdapter(adapter);
mViewPager.setOnPageChangeListener(new MyOnPagerChangerListener());
initPoints();
}
//初始化下面的小圆点
private void initPoints()
{
for(int i=0;i<4;i++)
{
points[i]=(ImageView)mLinearLayout.getChildAt(i);
points[i].setImageResource(R.drawable.sysclear_ic_storage_left);
}
current=0;//默认在第一页
points[current].setImageResource(R.drawable.sysclear_ic_storage_used);//此刻处于第一页,把第一页的小圆圈设置为unenabled
}
class MyOnPagerChangerListener implements OnPageChangeListener
{
@Override
public void onPageScrollStateChanged(int arg0) {
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageSelected(int arg0) {
points[arg0].setImageResource(R.drawable.sysclear_ic_storage_used);
points[current].setImageResource(R.drawable.sysclear_ic_storage_left);
current=arg0;
}
}
class MySetOnClickListener implements OnClickListener{
@Override
public void onClick(View v) {
Intent _Intent=new Intent();
_Intent.setClass(LogoActivity.this, MainActivity.class);
startActivity(_Intent);
LogoActivity.this.finish();
}
}
}
以上是一些比较的代码,详细的代码已经上传,有兴趣的朋友可以点击下面的链接进行下载
http://download.csdn.net/detail/jiangqq781931404/5783713
还是首先先看效果图:
项目结构如下:
我们要实现这样的功能其实比较简单的,理解完前三篇文章就行,现在正是开始创建
1:我们要创建四个布局文件,里边全不是背景图片,进行滑动显示(其中第四个比较特殊,里面还包括一个Button按钮)布局文件比较简单
2:主界面的布局为logo.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/liear"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="50dip"
android:orientation="horizontal" >
<ImageView
android:id="@+id/point_01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:padding="5dip"
android:src="@drawable/sysclear_ic_storage_used" />
<ImageView
android:id="@+id/point_02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:padding="5dip"
android:src="@drawable/sysclear_ic_storage_left" />
<ImageView
android:id="@+id/point_03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:padding="5dip"
android:src="@drawable/sysclear_ic_storage_left" />
<ImageView
android:id="@+id/point_04"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:clickable="true"
android:padding="5dip"
android:src="@drawable/sysclear_ic_storage_left" />
</LinearLayout>
</RelativeLayout> 3:创建LogoActivity.java进行显示实现,ViewerPager.把View加入到集合中,进行ViewPagerAdapter适配,重点代码如下:
package com.jiangqq.myweixindemo;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import com.jiangqq.adapter.MyViewePagerAdapter;
public class LogoActivity extends Activity {
private List<View> mLists=new ArrayList<View>();
private ViewPager mViewPager;
private MyViewePagerAdapter adapter;
private Button mButton;
private LayoutInflater mLayoutInflater;
private LinearLayout mLinearLayout;
private int current=0;
private ImageView[] points=new ImageView[4];
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.logo);
mLayoutInflater=LayoutInflater.from(this);
mLinearLayout=(LinearLayout)this.findViewById(R.id.liear);
mViewPager=(ViewPager)this.findViewById(R.id.viewpager);
View view1=mLayoutInflater.inflate(R.layout.layout_01, null);
View view2=mLayoutInflater.inflate(R.layout.layout_02, null);
View view3=mLayoutInflater.inflate(R.layout.layout_03, null);
View view4=mLayoutInflater.inflate(R.layout.layout_04, null);
mButton=(Button)view4.findViewById(R.id.btn_start);
mButton.setOnClickListener(new MySetOnClickListener());
mLists.add(view1);
mLists.add(view2);
mLists.add(view3);
mLists.add(view4);
adapter=new MyViewePagerAdapter(mLists);
mViewPager.setAdapter(adapter);
mViewPager.setOnPageChangeListener(new MyOnPagerChangerListener());
initPoints();
}
//初始化下面的小圆点
private void initPoints()
{
for(int i=0;i<4;i++)
{
points[i]=(ImageView)mLinearLayout.getChildAt(i);
points[i].setImageResource(R.drawable.sysclear_ic_storage_left);
}
current=0;//默认在第一页
points[current].setImageResource(R.drawable.sysclear_ic_storage_used);//此刻处于第一页,把第一页的小圆圈设置为unenabled
}
class MyOnPagerChangerListener implements OnPageChangeListener
{
@Override
public void onPageScrollStateChanged(int arg0) {
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageSelected(int arg0) {
points[arg0].setImageResource(R.drawable.sysclear_ic_storage_used);
points[current].setImageResource(R.drawable.sysclear_ic_storage_left);
current=arg0;
}
}
class MySetOnClickListener implements OnClickListener{
@Override
public void onClick(View v) {
Intent _Intent=new Intent();
_Intent.setClass(LogoActivity.this, MainActivity.class);
startActivity(_Intent);
LogoActivity.this.finish();
}
}
}
以上是一些比较的代码,详细的代码已经上传,有兴趣的朋友可以点击下面的链接进行下载
http://download.csdn.net/detail/jiangqq781931404/5783713
相关文章推荐
- 使用ViewPager模拟实现应用程序启动界面
- 使用ViewPager模拟实现应用程序启动界面(二)
- 使用ViewPager模拟实现应用程序启动界面(一)
- 使用ViewPager模拟实现应用程序启动界面(一)
- 【Android UI设计与开发】2.引导界面(二)使用ViewPager实现欢迎引导页面
- ViewPager+Fragment的结合使用,实现QQ界面的理解
- Android使用ViewPager实现顶部tabbar切换界面
- Android仿微信界面--使用viewpager实现(慕课网笔记)
- 【Android界面实现】使用ScrollingTabsView实现有滑动标签的ViewPager效果
- 【Android UI设计与开发】第02期:引导界面(二)使用ViewPager实现欢迎引导页面
- 在ViewPager中使用Fragment实现界面左右滑动
- 【Android界面实现】使用PagerSlidingTabStrip实现滑动标签同步的ViewPager效果
- 引导界面(二)使用ViewPager实现欢迎引导页面
- Android开发使用Viewpager实现程序引导界面
- 使用Viewpager实现程序引导界面
- 【Android 复习】:第02期:引导界面(二)使用ViewPager实现欢迎引导页面
- 【Android UI设计与开发】第02期:引导界面(二)使用ViewPager实现欢迎引导页面
- 【Android UI设计与开发】第02期:引导界面(二)使用ViewPager实现欢迎引导页面
- Qt系统对话框中文化及应用程序实现重启及使用QSS样式表文件及使用程序启动界面
- ViewPager+Fragment的结合使用,实现QQ界面的理解