日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

安卓平滑的翻动效果

發(fā)布時(shí)間:2024/5/14 编程问答 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 安卓平滑的翻动效果 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

效果

1.activity加implements

implements GestureDetector.OnGestureListener

2.

<ViewFlipperandroid:id="@+id/mars_bg"android:layout_width="match_parent"android:layout_height="match_parent" />

3.

private GestureDetector gestureDetector = null; private ViewFlipper marsBg; private int[] imageID = {R.drawable.bg_ast1, R.drawable.bg_main, R.drawable.bg_home};

4.oncreat中

// 生成GestureDetector對(duì)象,用于檢測(cè)手勢(shì)事件gestureDetector = new GestureDetector(this);// 添加用于切換的圖片for (int value : imageID) {// 定義一個(gè)ImageView對(duì)象ImageView image = new ImageView(this);image.setImageResource(value);// 充滿父控件image.setScaleType(ImageView.ScaleType.FIT_XY);// 添加到viewFlipper中marsBg.addView(image, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));}

5.重寫繼承的方法

@Overridepublic boolean onTouchEvent(MotionEvent event) {return this.gestureDetector.onTouchEvent(event);}@Overridepublic boolean onFling(MotionEvent arg0, MotionEvent arg1, float arg2, float arg3) {//對(duì)手指滑動(dòng)的距離進(jìn)行了計(jì)算,如果滑動(dòng)距離大于120像素,就做切換動(dòng)作,否則不做任何切換動(dòng)作。// 從左向右滑動(dòng)if (arg0.getX() - arg1.getX() > 120) {// 添加動(dòng)畫this.marsBg.setInAnimation(AnimationUtils.loadAnimation(this,R.anim.push_left_in));this.marsBg.setOutAnimation(AnimationUtils.loadAnimation(this,R.anim.push_left_out));this.marsBg.showNext();return true;}// 從右向左滑動(dòng)else if (arg0.getX() - arg1.getX() < -120) {this.marsBg.setInAnimation(AnimationUtils.loadAnimation(this,R.anim.push_right_in));this.marsBg.setOutAnimation(AnimationUtils.loadAnimation(this,R.anim.push_right_out));this.marsBg.showPrevious();return true;}return true;}@Overridepublic boolean onDown(MotionEvent e) {return false;}@Overridepublic void onShowPress(MotionEvent e) {}@Overridepublic boolean onSingleTapUp(MotionEvent e) {return false;}@Overridepublic boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {return false;}@Overridepublic void onLongPress(MotionEvent e) {}

6.anim

push_left_in.xml

<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>

push_left_out.xml

<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>

push_right_in.xml

<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>

push_right_out.xml

<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>

總結(jié)

以上是生活随笔為你收集整理的安卓平滑的翻动效果的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。