日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Android實現微信搖一搖功能

瀏覽:206日期:2022-06-06 10:37:14

本文實例為大家分享了Android實現微信搖一搖功能的具體代碼,供大家參考,具體內容如下

1、初始化界面

設置搖一搖界面的背景圖片和搖動時的上下兩半張圖片

Android實現微信搖一搖功能

<?xml version='1.0' encoding='utf-8'?><RelativeLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:tools='http://schemas.android.com/tools' android: android:layout_width='match_parent' android:layout_height='match_parent' tools:context='com.example.yyy.MainActivity' android:background='@mipmap/shakehideimg_man2' > <LinearLayout android:layout_width='match_parent' android:layout_height='match_parent' android:orientation='vertical' > <ImageView android: android:layout_width='match_parent' android:layout_height='0dp' android:layout_weight='1' android:background='@mipmap/shake_logo_up' /> <ImageView android: android:layout_width='match_parent' android:layout_height='0dp' android:layout_weight='1' android:background='@mipmap/shake_logo_down' /> </LinearLayout></RelativeLayout>

2、Mainactivity - onCreate()

private ImageView imgDown; private ImageView imgUp; private SensorManager sensorManager; private SensorEventListener sensorEventListener; private Sensor accSensor; private AnimationSet upAnimationSet; private AnimationSet downAnimationSet; private SoundPool soundPool; private int soundId; private Vibrator vibrator; private boolean isYYY = false; /*1.初始化頁面 2.初始化數據 * 3.監聽加速度變化(觸發條件) * 1.圖片執行動畫 * ***2.到服務器查詢同一時間搖一搖的異性用戶 * 2.播放音樂 * 3.振動 * **4.當你正在搖的時候(不能再搖動) * */ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); initData(); initEvent(); //注冊監聽 sensorManager.registerListener(sensorEventListener,accSensor,SENSOR_DELAY_NORMAL);}

3、初始化數據

private void initData() { //先獲得傳感器管理器 sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); //獲得加速度傳感器 accSensor = sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); //獲得振動器 vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); //初始化聲音池 soundPool = new SoundPool(4, AudioManager.STREAM_MUSIC, 0); //初始化聲音資源 soundId = soundPool.load(this,R.raw.awe,1); //初始化動畫 upAnimationSet = new AnimationSet(true); TranslateAnimation upUpAnimation = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, -0.5f); upUpAnimation.setDuration(500); TranslateAnimation upDownAnimation = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, -0.5f, Animation.RELATIVE_TO_SELF, 0); upDownAnimation.setDuration(500); //down動畫在up動畫之后執行 upUpAnimation.setStartOffset(500); upAnimationSet.addAnimation(upUpAnimation); upAnimationSet.addAnimation(upDownAnimation); upAnimationSet.setDuration(1000); upAnimationSet.setStartOffset(200); //初始化動畫 downAnimationSet = new AnimationSet(true); TranslateAnimation downUpAnimation = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0); downUpAnimation.setDuration(500); TranslateAnimation downDownAnimation = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0.5f); downDownAnimation.setDuration(500); //down動畫在up動畫之后執行 downDownAnimation.setStartOffset(500); downAnimationSet.addAnimation(downDownAnimation); downAnimationSet.addAnimation(downUpAnimation); downAnimationSet.setDuration(1000); downAnimationSet.setStartOffset(200); }

4、初始化事件 - 搖一搖

給加速度感應器設置監聽① 設置搖一搖的觸發條件② 播放動畫③ 播放音樂④ 開啟震動

private void initEvent() { sensorEventListener = new SensorEventListener() { /* * 當傳感器的值發生變化時的回調 * */ @Override public void onSensorChanged(SensorEvent event) { //Log.i('AAA', 'onSensorChanged: '); //設置觸發搖一搖的條件 //獲得x,y,z方向的變化 float[] values = event.values; float valueX = values[0]; //空間中X的變化 float valueY = values[1]; //空間中Y的變化 float valueZ = values[2]; //空間中Z的變化 if(valueX > 15 || valueY > 15 || valueZ >15){//觸發條件 if(!isYYY){ imgUp.startAnimation(upAnimationSet); imgDown.startAnimation(downAnimationSet); //播放音樂 soundPool.play(soundId,1,1,1,0,1); //振動 vibrator.vibrate(new long[]{200,400,200,400,200,400,200,400},-1); } } } /* *當傳感器精度發生變化的回調 * */ @Override public void onAccuracyChanged(Sensor sensor, int accuracy) { } }; upAnimationSet.setAnimationListener(new Animation.AnimationListener() { @Override public void onAnimationStart(Animation animation) { isYYY = true; } @Override public void onAnimationEnd(Animation animation) { isYYY = false; } @Override public void onAnimationRepeat(Animation animation) { } });}

5、添加權限

<uses-permission android:name='android.permission.VIBRATE'></uses-permission>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: 微信
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品国产中文字幕第一页| 日韩在线播放一区二区| 久久午夜精品| 亚洲手机在线| 国产尤物精品| 91成人精品| 丝袜美腿高跟呻吟高潮一区| 免费观看在线综合色| 亚洲伊人影院| 欧美天堂一区二区| 国产极品一区| 国产成人久久精品麻豆二区| 波多视频一区| 久久亚洲成人| 久久亚洲不卡| 天堂久久av| 欧美激情一区| 国产精品99精品一区二区三区∴ | 国产在线不卡一区二区三区| 国产精久久久| 国产精品白丝av嫩草影院| 国产精品地址| 精品美女久久| 伊人久久国产| 五月精品视频| 日韩精品亚洲aⅴ在线影院| 国产丝袜一区| 国产 日韩 欧美 综合 一区| 国产精品99一区二区| 国产视频久久| 日韩avvvv在线播放| 欧美午夜精彩| 在线亚洲一区| 日本成人在线一区| 久久精品国产999大香线蕉| 亚洲三级网址| 久久国产三级| 亚洲1234区| 日本亚州欧洲精品不卡| 久久免费影院| 欧美日韩日本国产亚洲在线| 亚洲另类av| 国产一区二区三区视频在线| 日本成人在线视频网站| 国产精品嫩草影院在线看| 国产一区二区三区亚洲综合| 日韩成人在线看| 精品欧美视频| 亚洲欧美日韩高清在线| 青草国产精品| 欧美不卡高清一区二区三区| 亚洲一区资源| 免费视频最近日韩| 国产videos久久| 蜜臀a∨国产成人精品| 免费在线日韩av| 亚洲精品电影| 久久精品三级| 美国三级日本三级久久99| 亚洲欧美日韩高清在线| 日韩国产精品久久久| 久久男人天堂| 四虎成人精品一区二区免费网站| 香蕉久久久久久久av网站| 日韩二区在线观看| 欧美成人精品三级网站| 欧美一区不卡| 亚洲一级网站| 免费一级欧美片在线观看网站| 日本在线一区二区三区| 久久精品日韩欧美| 中文字幕一区二区av| 色黄视频在线观看| 国产精品午夜一区二区三区| 激情欧美丁香| 麻豆成人av在线| 日韩精选在线| 欧美一级一区| 国产欧美精品| 亚洲激情中文在线| 色婷婷色综合| 欧美久久一区二区三区| 好吊日精品视频| 久久久久久婷| 人人爱人人干婷婷丁香亚洲| 国产精品美女在线观看直播| 午夜久久一区| 久久uomeier| 麻豆精品蜜桃视频网站| 午夜亚洲一区| 日韩精品首页| 久久中文字幕一区二区三区| 综合亚洲自拍| 在线亚洲成人| 欧美综合另类| 伊人国产精品| 精品日韩毛片| 日韩欧美1区| 国产一区二区三区网| 国产午夜久久av| 日韩在线精品| 精品视频国产| 欧美国产中文高清| 人人精品久久| 亚洲欧美日韩在线观看a三区| 国产亚洲网站| 亚洲精品一区三区三区在线观看| 亚洲深夜影院| 丝袜av一区| 国产高潮在线| 欧美成人一二区| 欧美日韩亚洲一区在线观看| 日韩**一区毛片| 亚洲精品成a人ⅴ香蕉片| 鲁大师成人一区二区三区| 97久久中文字幕| 免费观看久久久4p| 爽好多水快深点欧美视频| 日韩一区二区三区高清在线观看| 欧美日韩1区2区3区| 亚洲精品精选| 亚洲精品一区二区在线播放∴| 国产videos久久| 久久亚洲黄色| 高清一区二区| av资源中文在线| 免费人成精品欧美精品| 日韩一区二区久久| 国产精品视频一区视频二区| 国产探花一区在线观看| 国产欧美大片| 久久免费精品| 都市激情国产精品| 视频福利一区| 欧美肉体xxxx裸体137大胆| 不卡在线一区二区| 丝袜美腿亚洲一区| 69堂免费精品视频在线播放| 欧美激情日韩| 日韩激情一区| 国产综合激情| 国产婷婷精品| 日本不卡视频一二三区| 99久久精品网站| 日韩中文影院| 亚洲欧洲日韩| 国产精品一页| 欧美男人天堂| 欧美日韩国产亚洲一区| 蜜桃伊人久久| 91成人在线精品视频| 国产精品乱战久久久| 国产成人精品免费视| 999精品色在线播放| 午夜一级久久| 国产欧美一区二区三区国产幕精品| 亚洲国内欧美| 石原莉奈在线亚洲三区| 日本aⅴ精品一区二区三区| 欧美国产极品| 欧美日中文字幕| 国产精品13p| 好吊一区二区三区| 91成人在线| 欧美激情国产在线| 欧美69视频| 日韩一区二区三区四区五区| 妖精视频成人观看www| 亚洲精品动态| 国产成人精选| 精品午夜av| 欧美一级精品| 久久蜜桃资源一区二区老牛| 日韩午夜电影| 国产剧情一区| 欧美亚洲国产激情| 青青草国产精品亚洲专区无| 深夜福利视频一区二区| 老鸭窝毛片一区二区三区| 国产精品久久久一区二区| 97久久超碰| 日韩成人高清| 日韩国产精品久久久久久亚洲| 日韩精品一区二区三区中文在线| 免费观看在线综合色| 免费在线成人| 亚洲欧美日韩在线观看a三区| 亚洲一区二区成人| 亚洲网站视频| 日韩欧美精品一区| 亚洲精品四区| 成人久久久久| 国产精品欧美在线观看| 欧美~级网站不卡| 久久99蜜桃| 国产精品视区| 亚洲aⅴ网站| 欧美成人a交片免费看| 日韩av字幕| 久久国产电影|