展会信息港展会大全

用ViewFlipper来模仿UC的翻页效果 android开发
来源:互联网   发布日期:2015-10-02 16:46:30   浏览:2006次  

导读:android开发用ViewFlipper来模仿UC的翻页效果1.[代码]这个是主类package com.webStudy;import android.app.Activity;import android.app.AlertDialog;import android.app.Dialog;import android.content.Di......

android开发用ViewFlipper来模仿UC的翻页效果

1. [代码]这个是主类

package com.webStudy;

import android.app.Activity;

import android.app.AlertDialog;

import android.app.Dialog;

import android.content.DialogInterface;

import android.content.Intent;

import android.graphics.Canvas;

import android.graphics.Color;

import android.graphics.Paint;

import android.os.Bundle;

import android.view.GestureDetector;

import android.view.Menu;

import android.view.MenuItem;

import android.view.MotionEvent;

import android.view.View;

import android.view.Window;

import android.view.WindowManager;

import android.widget.Button;

import android.widget.Toast;

import android.widget.ViewFlipper;

public class Activity01 extends Activity {

private ViewFlipper mViewFlipper;

private GestureDetector mGestureDetector;

private Button button;

private Button chinese;

private String msg =null;

private int id = 0;

private Paint paint=null;

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,

WindowManager.LayoutParams.FLAG_FULLSCREEN);

setContentView(R.layout.main);

//机器人按钮

chinese =(Button) this.findViewById(R.id.enterchinese);

button =(Button) this.findViewById(R.id.Button_next2);

mViewFlipper = (ViewFlipper) this.findViewById(R.id.details);

mGestureDetector = new GestureDetector(this,new LearnGestureListener());

paint = new Paint();

//机器人按钮

button.setOnClickListener(new Button.OnClickListener(){

public void onClick(View v) {

if(id>=3){

id=0;

}

switch(id){

case 0:

msg ="滑动屏幕可以进入其它板块";

break;

case 1:

msg = "欢迎使用本软件,感谢你的支持";

break;

case 2:

msg = "还有什么呢,想不到了";

break;

}

Toast toast =Toast.makeText(Activity01.this, msg, Toast.LENGTH_SHORT);

toast.show();

id += 1;

}

});

chinese.setOnClickListener(new Button.OnClickListener(){

@Override

public void onClick(View v) {

Intent intent=new Intent(Activity01.this,denglu.class);

startActivity(intent);

Activity01.this.finish();

}

});

}

public void onDrawShipe(Canvas canvas){

paint.setColor(Color.BLACK);

canvas.drawText(msg, 50, 320, paint);

}

public boolean onTouchEvent(MotionEvent event){

if(mGestureDetector.onTouchEvent(event))

return true;

else

return false;

}

class LearnGestureListener extends GestureDetector.SimpleOnGestureListener{

public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY){

if(e1.getX()>e2.getX()){

mViewFlipper.setInAnimation(getApplicationContext(), R.anim.push_left_in);

mViewFlipper.setOutAnimation(getApplicationContext(), R.anim.push_left_out);

mViewFlipper.setFlipInterval(1000);

mViewFlipper.showNext();

}

if(e1.getX()<e2.getX()){

mViewFlipper.setInAnimation(getApplicationContext(), R.anim.push_right_in);

mViewFlipper.setOutAnimation(getApplicationContext(), R.anim.push_right_out);

mViewFlipper.showPrevious();

mViewFlipper.setInAnimation(getApplicationContext(), R.anim.push_left_in);

mViewFlipper.setOutAnimation(getApplicationContext(), R.anim.push_left_out);

}

return true;

}

}

public boolean onCreateOptionsMenu(Menu menu){

menu.add(Menu.NONE,1,1,"帮助").setIcon(android.R.drawable.ic_menu_help);

menu.add(Menu.NONE,2,2,"退出").setIcon(android.R.drawable.ic_menu_close_clear_cancel);

return true;

}

public boolean onOptionsItemSelected(MenuItem id){

switch(id.getItemId()){

case 1:

break;

case 2:

Dialog dialog = new AlertDialog.Builder(Activity01.this)

.setTitle("你要退出此程序")

.setPositiveButton("确定",

newDialogInterface.OnClickListener(){

public void onClick(DialogInterface dialog,int whichButton){

Activity01.this.finish();

}

})

.setNegativeButton("取消",

new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

}

})

.create();

dialog.show();

break;

}

return false;

}

public boolean onPreparedOptionsMenu(Menu menu)

{

return true;

}

}

2. [代码]这个是布局文件

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout

xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent">

<ViewFlipper android:id="@+id/details"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

<AbsoluteLayout

android:orientation="vertical"

android:background="@drawable/snack"

android:layout_width="fill_parent"

android:layout_height="fill_parent">

<Button

android:text=""

android:id="@+id/Button_next2"

android:background="@drawable/log2"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_x="260dp"

android:layout_y="320dp"

>

</Button>

</AbsoluteLayout>

<LinearLayout

android:orientation="vertical"

android:background="@drawable/zhuye"

android:layout_width="fill_parent"

android:layout_height="fill_parent">

<Button

android:text="Next2"

android:id="@+id/Button_next1"

android:layout_width="fill_parent"

android:layout_height="wrap_content">

</Button>

<ImageView

android:id="@+id/image1"

android:src="@drawable/icon"

android:layout_width="fill_parent"

android:layout_height="wrap_content">

</ImageView>

</LinearLayout>

<AbsoluteLayout

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:background="@drawable/kaichangchinese"

android:weightSum="1" android:orientation="vertical">

<TextView

android:layout_width="0dip"

android:layout_height="0dip"

/>

<TextView android:textSize="20dip" android:text="秦王嬴政一统天下后,卫庄率秦军攻打墨家机关城,铲除墨家剩余势力,为了保卫机关城,天明一行人来到机关城禁地,这是一个神秘的地方,需要经过重重考验,才能获得最强大的武器和力量,拯救机关城于危难之中,小朋友们,你们愿意帮助天明他们冲破重重关卡,取得最后的胜利吗?" android:textColor="#000000" android:id="@+id/textchinese" android:layout_width="276dp" android:layout_height="335dp" android:layout_x="26dp" android:layout_y="119dp"></TextView>

<Button android:layout_width="72dp" android:background="@drawable/backchinese" android:id="@+id/backchinese" android:layout_height="67dp" android:layout_x="212dp" android:layout_y="389dp"></Button>

<Button android:layout_width="93dp" android:background="@drawable/enterchinese" android:id="@+id/enterchinese" android:layout_height="67dp" android:layout_x="26dp" android:layout_y="386dp"></Button>

</AbsoluteLayout>

<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:background="@drawable/kaichang00math"

android:weightSum="1" android:orientation="vertical">

<TextView

android:layout_width="0dip"

android:layout_height="0dip"

/>

<TextView

android:textColor="#000000"

android:textSize="20dip"

android:text="记忆在时间中成风, 往事如流水匆匆逝去 , 生命花瓣在冬夜飘零 , 犹如停留叶面的晨露,这样的动荡不安的世界,没有人可以选择自己的命运 ,作为卫庄手下一流的杀手组织,聚散流沙中的每个人都是神秘冷酷的武林高手,想知道他们平时的生活都是什么样子的吗?

接下来就让我们一起来一探究竟吧!"

android:id="@+id/text"

android:layout_width="260dp" android:layout_x="31dp" android:layout_y="105dp" android:layout_height="318dp">

</TextView>

<Button android:id="@+id/enter" android:layout_width="162dp" android:layout_height="123dp" android:background="@drawable/enter01math" android:layout_x="0dp" android:layout_y="380dp"></Button>

<Button android:id="@+id/back" android:layout_width="92dp" android:layout_height="66dp" android:background="@drawable/backmath" android:layout_x="192dp" android:layout_y="407dp"></Button>

</AbsoluteLayout>

</ViewFlipper>

</LinearLayout>

3. [代码]分别四个动画的实现

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android">

<translate

android:fromXDelta="100%p"

android:toXDelta="0"

android:duration="500"/>

<alpha

android:fromAlpha="0.0"

android:toAlpha="1.0"

android:duration="500" />

</set>

4. [代码][XML]代码

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android">

<translate

android:fromXDelta="0"

android:toXDelta="-100%p"

android:duration="500"/>

<alpha

android:fromAlpha="1.0"

android:toAlpha="0.0"

android:duration="500" />

</set>

5. [代码][XML]代码

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android">

<translate android:fromXDelta="-100%p" android:toXDelta="0"

android:duration="500" />

<alpha android:fromAlpha="0.1" android:toAlpha="1.0"

android:duration="500" />

</set>

6. [代码][XML]代码

<?xml version="1.0" encoding="utf-8"?>

<set xmlns:android="http://schemas.android.com/apk/res/android">

<translate android:fromXDelta="0" android:toXDelta="100%p"

android:duration="500" />

<alpha android:fromAlpha="1.0" android:toAlpha="0.1"

android:duration="500" />

</set>

7. [图片]

8. [图片]

赞助本站

人工智能实验室

相关热词: ViewFlipper 翻页效果

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港