国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android入門教程之Vibrator(振動器)

2019-12-12 05:55:00
字體:
來源:轉載
供稿:網友

前言:

Vibrator簡介:

 下面我們就來寫個簡單的例子,來熟悉下這個Vibrator的用法!

1.獲得Vibrator實例:

Vibrator vb = (Vibrator)getSystemService(Service.VIBRATOR_SERVICE);

2.可以使用的相關方法:

1.stract void cancel():關閉或者停止振動器

2.tract boolean hasVibrator():判斷硬件是否有振動器

3.id vibrate(long milliseconds):控制手機振動為milliseconds毫秒

4.id vibrate(long[] pattern,int repeat):指定手機以pattern指定的模式振動! 比如:pattern為new int[200,400,600,800],就是讓他在200,400,600,800這個時間交替啟動與關閉振動器! 而第二個則是重復次數,如果是-1的只振動一次,如果是0的話則一直振動 還有其他兩個方法用得不多~ 對了,使用振動器還需要在AndroidManifest.xml中添加下述權限: <uses-permission android:name="android.permission.VIBRATE"/>

3.使用示例:設置頻率不同的震動器:

對于Vibrator用的最廣泛的莫過于所謂的手機按摩器類的app,在app市場一搜,一堆,筆者隨便下了 幾個下來瞅瞅,都是大同小異的,這點小玩意竟然有8W多的下載量...好吧,好像也不算多, 不過普遍功能都是切換振動頻率來完成,而所謂的按摩效果,是否真的有效就不得而知了, 那么接下來我們就來實現一個簡單的按摩器吧! 核心其實就是:vibrate()中的數組的參數,根據自己需求寫一個數組就可以了! 下述代碼需要在真機上進行測試!

運行效果圖:

實現代碼:

簡單的布局文件,五個按鈕:activity_main.xml:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:orientation="vertical">    <Button    android:id="@+id/btn_hasVibrator"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="判斷是否有振動器" />  <Button    android:id="@+id/btn_short"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="短振動" />  <Button    android:id="@+id/btn_long"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="長振動" />  <Button    android:id="@+id/btn_rhythm"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="節奏振動" />  <Button    android:id="@+id/btn_cancle"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:text="取消振動" /></LinearLayout>

接著是MainActivity.java部分:

public class MainActivity extends AppCompatActivity implements View.OnClickListener {  private Button btn_hasVibrator;  private Button btn_short;  private Button btn_long;  private Button btn_rhythm;  private Button btn_cancle;  private Vibrator myVibrator;  private Context mContext;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    //獲得系統的Vibrator實例:    myVibrator = (Vibrator) getSystemService(Service.VIBRATOR_SERVICE);    mContext = MainActivity.this;    bindViews();  }  private void bindViews() {    btn_hasVibrator = (Button) findViewById(R.id.btn_hasVibrator);    btn_short = (Button) findViewById(R.id.btn_short);    btn_long = (Button) findViewById(R.id.btn_long);    btn_rhythm = (Button) findViewById(R.id.btn_rhythm);    btn_cancle = (Button) findViewById(R.id.btn_cancle);    btn_hasVibrator.setOnClickListener(this);    btn_short.setOnClickListener(this);    btn_long.setOnClickListener(this);    btn_rhythm.setOnClickListener(this);    btn_cancle.setOnClickListener(this);  }  @Override  public void onClick(View v) {    switch (v.getId()) {      case R.id.btn_hasVibrator:        Toast.makeText(mContext, myVibrator.hasVibrator() ? "當前設備有振動器" : "當前設備無振動器",            Toast.LENGTH_SHORT).show();        break;      case R.id.btn_short:        myVibrator.cancel();        myVibrator.vibrate(new long[]{100, 200, 100, 200}, 0);        Toast.makeText(mContext, "短振動", Toast.LENGTH_SHORT).show();        break;      case R.id.btn_long:        myVibrator.cancel();        myVibrator.vibrate(new long[]{100, 100, 100, 1000}, 0);        Toast.makeText(mContext, "長振動", Toast.LENGTH_SHORT).show();        break;      case R.id.btn_rhythm:        myVibrator.cancel();        myVibrator.vibrate(new long[]{500, 100, 500, 100, 500, 100}, 0);        Toast.makeText(mContext, "節奏振動", Toast.LENGTH_SHORT).show();        break;      case R.id.btn_cancle:        myVibrator.cancel();        Toast.makeText(mContext, "取消振動", Toast.LENGTH_SHORT).show();    }  }}

對了,別漏了振動器權限哦!

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

小結:

好了,本文我們學習了Vibrator(振動器)的基本使用,代碼非常簡單,還不趕緊加入到 你的APP中,讓你的應用HI起來~

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 恩平市| 麻栗坡县| 浪卡子县| 丹寨县| 太白县| 思南县| 京山县| 新宾| 敦煌市| 鄂伦春自治旗| 延安市| 凤冈县| 沙坪坝区| 乐山市| 汉源县| 个旧市| 平陆县| 宁明县| 新建县| 文化| 洛扎县| 固始县| 涟水县| 云霄县| 饶平县| 噶尔县| 旬阳县| 旌德县| 迁西县| 东丽区| 南平市| 五原县| 大安市| 手游| 尖扎县| 内丘县| 新建县| 江口县| 柳江县| 德钦县| 义乌市|