最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android利用傳感器實現(xiàn)微信搖一搖功能

 更新時間:2021年10月11日 16:52:11   作者:jopen  
這篇文章主要為大家詳細介紹了Android利用傳感器實現(xiàn)微信搖一搖功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Android微信搖一搖功能的實現(xiàn)方法,供大家參考,具體內(nèi)容如下

import java.util.ArrayList; 
import java.util.List; 
import java.util.Random; 
import android.app.Activity; 
import android.app.Service; 
import android.content.res.Resources; 
import android.hardware.Sensor; 
import android.hardware.SensorEvent; 
import android.hardware.SensorEventListener; 
import android.hardware.SensorManager; 
import android.os.Bundle; 
import android.os.Vibrator; 
import android.view.View; 
import android.widget.Button; 
 
//需要實現(xiàn)SensorEventListener接口 
public class LoversChoise extends Activity implements SensorEventListener{ 
 
 Button clear; 
 //定義sensor管理器 
 private SensorManager mSensorManager; 
 //震動 
 
 private Vibrator vibrator; 
  public void onCreate(Bundle savedInstanceState) { 
  super.onCreate(savedInstanceState); 
  setContentView(R.layout.loverschoise); 
  //獲取傳感器管理服務 
  mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE); 
  //震動 
  vibrator = (Vibrator) getSystemService(Service.VIBRATOR_SERVICE); 
  clear = (Button) findViewById(R.id.clear); 
  clear.setOnClickListener(new Button.OnClickListener(){ 
  @Override 
  public void onClick(View arg0) { 
   // TODO Auto-generated method stub 
  //點擊button后,給button按鈕設置了text 
  clear.setText("現(xiàn)在給button的text賦值嘍~"); 
 
 }); 
 
@Override 
protected void onResume(){ 
 super.onResume(); 
 //加速度傳感器 
 mSensorManager.registerListener(this, 
 mSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), 
 //還有SENSOR_DELAY_UI、SENSOR_DELAY_FASTEST、SENSOR_DELAY_GAME等, 
 //根據(jù)不同應用,需要的反應速率不同,具體根據(jù)實際情況設定 
 
 SensorManager.SENSOR_DELAY_NORMAL); 
 
} 
 
@Override 
protected void onStop(){ 
 mSensorManager.unregisterListener(this); 
 super.onStop(); 
 
} 
 
@Override 
protected void onPause(){ 
 mSensorManager.unregisterListener(this); 
 super.onPause(); 
 
} 
 
@Override 
public void onAccuracyChanged(Sensor sensor, int accuracy) { 
 // TODO Auto-generated method stub 
 //當傳感器精度改變時回調(diào)該方法,Do nothing. 
 
} 
 
@Override 
public void onSensorChanged(SensorEvent event) { 
 // TODO Auto-generated method stub 
 int sensorType = event.sensor.getType(); 
 //values[0]:X軸,values[1]:Y軸,values[2]:Z軸 
 float[] values = event.values; 
 if(sensorType == Sensor.TYPE_ACCELEROMETER){ 
 
 
 /*因為一般正常情況下,任意軸數(shù)值最大就在9.8~10之間,只有在你突然搖動手機 
 *的時候,瞬時加速度才會突然增大或減少。 
 *所以,經(jīng)過實際測試,只需監(jiān)聽任一軸的加速度大于14的時候,改變你需要的設置 
 *就OK了~~~ 
 
 */ 
 
 if((Math.abs(values[0])>14||Math.abs(values[1])>14||Math.abs(values[2])>14)){ 
 
 
 //搖動手機后,設置button上顯示的字為空 
 clear.setText(null); 
 //搖動手機后,再伴隨震動提示~~ 
 vibrator.vibrate(500); 
 
 } 
 
 } 
 
} 
 
} 

現(xiàn)在的不少應用都用到了搖動手機改變內(nèi)容的功能,比如微信中的“搖一搖”功能。前兩天要實現(xiàn)這個功能,稍微看了一下關(guān)于傳感器Sensor的內(nèi)容。

傳感器有幾種類型:

方向傳感器:   Sensor.TYPE_ORIENTATION
加速度(重力)傳感器: Sensor.TYPE_ACCELEROMETER
光線傳感器:    Sensor.TYPE_LIGHT
磁場傳感器:   Sensor.TYPE_MAGNETIC_FIELD
距離(臨近性)傳感器: Sensor.TYPE_PROXIMITY
溫度傳感器:   Sensor.TYPE_TEMPERATURE

在搖動手機的功能中,我們只用加速度傳感器就行了~~

加速度傳感器返回值的單位是加速度的單位 m/s^2(米每二次方秒),有三個方向的值分別是

values[0]: x-axis 方向加速度
values[1]: y-axis 方向加速度
values[2]: z-axis 方向加速度

其中x,y,z方向的定義是以水平放置在的手機的右下腳為參照系坐標原點

x 方向就是手機的水平方向,右為正
y 方向就是手機的水平垂直方向,前為正
y 方向就是手機的空間垂直方向,天空的方向為正,地球的方向為負

所以說,你的手機放置的空間位置不同,它三個方向的加速度也不同。在這里,三個方向的加速度,與我們傳統(tǒng)意義上的加速度(9.8m/s2)有所區(qū)別,需細細品味。

以上是搖動手機后清除TextView的文字的代碼。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Android修改DatePicker字體顏色及分割線顏色詳細介紹

    Android修改DatePicker字體顏色及分割線顏色詳細介紹

    這篇文章主要介紹了Android修改DatePicker字體顏色及分割線顏色詳細介紹的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • Android編程程序?qū)崿F(xiàn)一鍵鎖屏的方法講解

    Android編程程序?qū)崿F(xiàn)一鍵鎖屏的方法講解

    今天小編就為大家分享一篇關(guān)于Android編程程序?qū)崿F(xiàn)一鍵鎖屏的方法講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • JNI方法實現(xiàn)圖片壓縮(壓縮率極高)

    JNI方法實現(xiàn)圖片壓縮(壓縮率極高)

    這篇文章主要給大家介紹了一種JNI方法實現(xiàn)圖片壓縮(壓縮率極高)的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對各位Android開發(fā)者們具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-11-11
  • Android中使用ListView繪制自定義表格技巧分享

    Android中使用ListView繪制自定義表格技巧分享

    使用ListView繪制自定義的表格有朋友嘗試過沒有,下面為大家分享下要實現(xiàn)下圖的效果有幾個方面,參照著這幾點做了個簡單的實現(xiàn)不是問題好了,話不多說看代碼
    2013-06-06
  • Android自定義View實現(xiàn)APP啟動頁倒計時效果

    Android自定義View實現(xiàn)APP啟動頁倒計時效果

    這篇文章主要為大家詳細介紹了Android自定義View實現(xiàn)APP啟動頁倒計時效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • Android編程自定義線程池與用法示例

    Android編程自定義線程池與用法示例

    這篇文章主要介紹了Android編程自定義線程池與用法,結(jié)合實例形式分析了Android線程池的功能、定義及簡單使用方法,需要的朋友可以參考下
    2017-12-12
  • android嵌套滾動入門實踐

    android嵌套滾動入門實踐

    嵌套滾動是 Android OS 5.0之后,google 為我們提供的新特性,本篇文章主要介紹了android嵌套滾動入門實踐,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • Android仿QQ討論組頭像效果

    Android仿QQ討論組頭像效果

    這篇文章主要為大家詳細介紹了Android仿QQ討論組頭像效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • Android實現(xiàn)九宮格拼圖游戲

    Android實現(xiàn)九宮格拼圖游戲

    這篇文章主要為大家詳細介紹了Android實現(xiàn)九宮格拼圖游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-07-07
  • android listview進階實例分享

    android listview進階實例分享

    這篇文章主要介紹了android listview進階實例分享,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01

最新評論

城市| 乌拉特前旗| 乌拉特中旗| 天全县| 陈巴尔虎旗| 吉首市| 汝阳县| 左贡县| 教育| 浮山县| 康保县| 朝阳市| 呼伦贝尔市| 泉州市| 泰宁县| 静海县| 易门县| 赤水市| 阳江市| 瓦房店市| 武川县| 彝良县| 革吉县| 天长市| 石家庄市| 正宁县| 贵溪市| 青河县| 太康县| 徐州市| 宜宾县| 嵊泗县| 天津市| 西峡县| 阜城县| 日照市| 曲松县| 桦川县| 珠海市| 克什克腾旗| 中山市|