導航:首頁 > 操作系統 > android滑動控制

android滑動控制

發布時間:2024-10-11 07:37:58

A. android 手勢操作中滑動和滾動的區別

滑動一般是左右,滾動是上下,而且滑動操作范圍有限,滾動范圍比較大

B. android滑動開關按鈕實現方式有幾種

起初我在Android上我只會使用CheckBox去滿足對應的功能。後來,查看開發文檔發現,android也有了自己的原鍵游生態開關控制項,並且在4.0版本中又優化加入了新的類似控制項--Switch控制項,以及使用起來攔亮空十分簡單的ToggleButton,可是它們只是簡瞎帶有切換效果,而不帶有滑動切換效果,並且Switch控制項只支持高版本的系統,對於2.3就不支持。所以,要想看如何實現滑動切換的效果,必須了解這些控制項的實現方式。下面,讓我們查看下android開發文檔,看看這些是如何實現使用的。

C. 怎麼樣有滑動效果 android

android的滑動效果是通過View容器類ViewFlipper來實現的。

ViewFilpper是Android官方提供的一個View容器類,繼承於ViewAnimator類,用於實現頁面切換,也可以設定時間間隔,讓它自動播放。
又ViewAnimator繼承至於FrameLayout的,所以ViewFilpper的Layout裡面可以放置多個View,繼承關系如下:

1、activity的寫法如下:

importandroid.app.Activity;

importandroid.os.Bundle;

importandroid.view.GestureDetector;

importandroid.view.MotionEvent;

importandroid.view.ViewGroup.LayoutParams;

importandroid.view.animation.Animation;

importandroid.view.animation.AnimationUtils;

importandroid.widget.ImageView;

importandroid.widget.ViewFlipper;

.view.GestureDetector.OnGestureListener{

privateint[]imgs={R.drawable.img1,R.drawable.img2,

R.drawable.img3,R.drawable.img4,R.drawable.img5};

=null;

privateViewFlipperviewFlipper=null;

privateActivitymActivity=null;

@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

mActivity=this;

viewFlipper=(ViewFlipper)findViewById(R.id.viewflipper);

gestureDetector=newGestureDetector(this);//聲明檢測手勢事件

for(inti=0;i<imgs.length;i++){//添加圖片源

ImageViewiv=newImageView(this);

iv.setImageResource(imgs[i]);

iv.setScaleType(ImageView.ScaleType.FIT_XY);

viewFlipper.addView(iv,newLayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT));

}

viewFlipper.setAutoStart(true);//設置自動播放功能(點擊事件,前自動播放)

viewFlipper.setFlipInterval(3000);

if(viewFlipper.isAutoStart()&&!viewFlipper.isFlipping()){

viewFlipper.startFlipping();

}

}

@Override

publicbooleanonTouchEvent(MotionEventevent){

viewFlipper.stopFlipping();//點擊事件後,停止自動播放

viewFlipper.setAutoStart(false);

returngestureDetector.onTouchEvent(event);//注冊手勢事件

}

@Override

publicbooleanonFling(MotionEvente1,MotionEvente2,floatvelocityX,floatvelocityY){

if(e2.getX()-e1.getX()>120){//從左向右滑動(左進右出)

AnimationrInAnim=AnimationUtils.loadAnimation(mActivity,R.anim.push_right_in);//向右滑動左側進入的漸變效果(alpha0.1->1.0)

AnimationrOutAnim=AnimationUtils.loadAnimation(mActivity,R.anim.push_right_out);//向右滑動右側滑出的漸變效果(alpha1.0->0.1)

viewFlipper.setInAnimation(rInAnim);

viewFlipper.setOutAnimation(rOutAnim);

viewFlipper.showPrevious();

returntrue;

}elseif(e2.getX()-e1.getX()<-120){//從右向左滑動(右進左出)

AnimationlInAnim=AnimationUtils.loadAnimation(mActivity,R.anim.push_left_in);//向左滑動左側進入的漸變效果(alpha0.1->1.0)

AnimationlOutAnim=AnimationUtils.loadAnimation(mActivity,R.anim.push_left_out);//向左滑動右側滑出的漸變效果(alpha1.0->0.1)

viewFlipper.setInAnimation(lInAnim);

viewFlipper.setOutAnimation(lOutAnim);

viewFlipper.showNext();

returntrue;

}

returntrue;

}

@Override

publicbooleanonDown(MotionEvente){

returnfalse;

}

@Override

publicvoidonLongPress(MotionEvente){

}

@Override

publicbooleanonScroll(MotionEvente1,MotionEvente2,floatdistanceX,floatdistanceY){

returnfalse;

}

@Override

publicvoidonShowPress(MotionEvente){

}

@Override

publicbooleanonSingleTapUp(MotionEvente){

returnfalse;

}

}

2、main.xml配置文件:

<?xmlversion="1.0"encoding="utf-8"?>

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

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical">

<ViewFlipper

android:id="@+id/viewflipper"

android:layout_width="fill_parent"

android:layout_height="fill_parent"/>

</LinearLayout>

以上完成了手勢滑屏:

手勢滑動屏幕動畫,是通過android.view.GestureDetector類檢測各種手勢事件實現的,該類有兩個回調介面(Interface)

A、GestureDetector.OnDoubleTapListener,用來通知DoubleTap雙擊事件,類似於滑鼠的雙擊事件,介面三個抽象回調函數如下

1、onDoubleTap(MotionEvent e):DoubleTap雙擊手勢事件後通知(觸發)

2、onDoubleTapEvent(MotionEvent e):DoubleTap雙擊手勢事件之間通知(觸發),包含down、up和move事件(這里指的是在雙擊之間發生的事件,例如在同一個地方雙擊會產生DoubleTap手勢,而在DoubleTap手勢裡面還會發生down和up事件,這兩個事件由該函數通知)

3、onSingleTapConfirmed(MotionEvent e):用來判定該次點擊是SingleTap而不是DoubleTap,如果連續點擊兩次就是DoubleTap手勢;那麼如果只點擊一次,系統等待一段時間後沒有收到第二次點擊則判定該次點擊為SingleTap而不是DoubleTap,此時觸發的就是SingleTapConfirmed事件

D. android 怎麼修改滑動的靈活度

安卓的觸屏靈敏度是無法設置調整的,包括修改,如若遇到觸屏不靈敏,可按以下方法調節:
1、只需將手機斷開電源,停止正在充電的操作,這樣手機就會重新可以正常使用,不再受到電流的影響,手機觸摸不靈敏的情況就會瞬間打破。

2、手機自身進水了的情況也會存在,可以嘗試將手機放在盛有滿滿大米的密封罐內,直至手機被大米覆蓋,使得水分被乾燥劑(大米)吸干,放個幾天即可。
3、還有一種情況是手機系統故障,可以恢復出廠設置試試,或拿到特約維修店刷機,如果對刷機很熟的話就可以自己刷了,還省去刷機費用。
4、可能是重擊導致焊點接觸不良,也可能是電路有斷線,這種情況只能前往修理部維修手機了,只需將手機的焊點重新焊接或者直接更換觸摸屏幕即可,價格不是很貴,注意不要被蒙騙。

閱讀全文

與android滑動控制相關的資料

熱點內容
51單片機控制pwm程序 瀏覽:295
汽車壓縮機串氣可以修么 瀏覽:633
30天學會全部語法pdf 瀏覽:52
java反編譯修補bug 瀏覽:614
如何修改伺服器ftp地址 瀏覽:119
雲伺服器如何用c盤分d盤 瀏覽:597
蘋果的單片機 瀏覽:804
程序員喝麻辣燙 瀏覽:140
安卓怎麼玩微軟的游戲 瀏覽:54
安卓如何在桌面同時操作好幾個app 瀏覽:72
美國app在哪裡看 瀏覽:320
java文件內容追加 瀏覽:622
為什麼下載壓縮包會變成文檔 瀏覽:727
自我安慰程序員的話 瀏覽:369
android備份程序 瀏覽:713
建設銀行亞洲手機app哪裡下載 瀏覽:502
桌面有一個文件夾圖標變透明了 瀏覽:382
vb文件如何加密 瀏覽:238
中行選擇編譯環境 瀏覽:248
編程打左右雙引號 瀏覽:719