您的位置:首页 > 移动开发 > Android开发

Android开发之滑动效果+页面分支跳转

2016-03-24 22:53 561 查看
package com.example.dazhong_client;

import com.lidroid.xutils.ViewUtils;
import com.lidroid.xutils.view.annotation.ViewInject;
import com.lidroid.xutils.view.annotation.event.OnClick;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity {
@ViewInject(R.id.btn)
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ViewUtils.inject(this);
}
@OnClick(R.id.btn)
public void click(View view){
Toast.makeText(MainActivity.this,"实现了点击控件", Toast.LENGTH_SHORT).show();
}
}


package com.example.dazhong_client;

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.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;

import com.lidroid.xutils.ViewUtils;
import com.lidroid.xutils.view.annotation.ViewInject;
import com.lidroid.xutils.view.annotation.event.OnClick;

public class WelcomeGuideAct extends Activity{
@ViewInject(R.id.welcome_guide_btn)
private Button btn;

@ViewInject(R.id.welcome_pager)
private ViewPager pager;
private List<View> list;

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.welcome_guide);
ViewUtils.inject(this);
initViewPager();
}
@OnClick(R.id.welcome_guide_btn)
public void click(View view){
//页面跳转
startActivity(new Intent(getBaseContext(),MainActivity.class));
finish();
}
//初始化ViewPager的方法
public void initViewPager(){
list=new ArrayList<View>();
ImageView iv=new ImageView(this);
iv.setImageResource(R.drawable.welcome_2);
list.add(iv);
ImageView iv1=new ImageView(this);
iv1.setImageResource(R.drawable.welcome_3);
list.add(iv1);
ImageView iv2=new ImageView(this);
iv2.setImageResource(R.drawable.welcome_4);
list.add(iv2);

pager.setAdapter(new MyPagerAdapter());

//监听ViewPager滑动效果
pager.setOnPageChangeListener(new OnPageChangeListener() {
//选中页面
@Override
public void onPageSelected(int arg0) {
//当选中第三个页面的时候
if(arg0==2){
btn.setVisibility(View.VISIBLE);
}else{
btn.setVisibility(View.GONE);
}

}
//滑动页面
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {

}
//页面滑动状态改变
@Override
public void onPageScrollStateChanged(int arg0) {

}
});
}
//定义ViewPager的适配器
class MyPagerAdapter extends PagerAdapter{

//计算需要多少item显示
@Override
public int getCount() {
// TODO Auto-generated method stub
return  list.size();
}

@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
return arg0==arg1;
}
//初始化ITEM实例的方法
public Object instantiateItem(ViewGroup container,int position){
container.addView(list.get(position));
return list.get(position);

}
//      销毁ITEM实例的方法
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
// TODO Auto-generated method stub
//super.destroyItem(container, position, object);
container.removeView(list.get(position));
}
}
}


package com.example.dazhong_client;

import com.example.dazhong_client.utils.SharedUtils;

import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;

public class WelcomStartAct extends Activity{
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.welcome);
new Handler(new Handler.Callback() {
//处理接收到的消息的方法
@Override
public boolean handleMessage(Message arg0) {
//实现页面跳转
if(SharedUtils.getWelcomeBoolean(getBaseContext()))//不是第一次启动
{
startActivity(new Intent(getApplicationContext(),MainActivity.class));
}
else{
startActivity(new Intent(getApplicationContext(),WelcomeGuideAct.class));
//保持访问记录
SharedUtils.putWelcomeBoolean(getBaseContext(), true);
}

finish();
return false;
}
}).sendEmptyMessageDelayed(0, 3000); //表示延时三秒进行任务的执行

//使用JAVA中的定时器进行处理
//      Timer timer=new Timer();
//      timer.schedule(new Task(), 3000); // 定时器延时执行任务方法
}
//  class Task extends TimerTask{
//      @Override
//      public void run() {
//          //实现页面跳转
//          startActivity(new Intent(getApplicationContext(),MainActivity.class));
//
//      }
//  }
}


package com.example.dazhong_client.utils;

import android.content.Context;
import android.content.SharedPreferences.Editor;

// 实现标记的写入预读取
public class SharedUtils {

private static final String FILE_NAME="dianping";
private static final String MODE_NAME="welcome";
//获取boolean类型的值
public static boolean getWelcomeBoolean(Context context){
return context.getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE).getBoolean(MODE_NAME, false);
}
//写入boolean类型的值
public static void putWelcomeBoolean(Context context,boolean isFirst){
Editor editor=context.getSharedPreferences(FILE_NAME, Context.MODE_APPEND).edit();
editor.putBoolean(MODE_NAME,isFirst);
editor.commit();
}
}


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/welcome_1">

</LinearLayout>


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<android.support.v4.view.ViewPager
android:id="@+id/welcome_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"/>

<Button
android:id="@+id/welcome_guide_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="46dp"
android:paddingLeft="30dp"
android:paddingRight="30dp"
android:visibility="gone"
android:text="点击立即进入"

/>

</RelativeLayout>


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />

<Button
android:id="@+id/btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_centerHorizontal="true"
android:layout_marginTop="107dp"
android:text="点击实现效果" />

</RelativeLayout>


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.dazhong_client"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
android:minSdkVersion="16"
android:targetSdkVersion="16" />

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.dazhong_client.WelcomStartAct"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.example.dazhong_client.MainActivity"></activity>
<activity android:name="com.example.dazhong_client.WelcomeGuideAct">

</activity>
</application>

</manifest>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: