android 震动 各种

简介: package irdc.zhendong;import irdc.zhendong.R;import android.app.Activity;import android.app.Service;import android.os.Bundle;import android.os.Vibrator;import android.view.View;import and

package irdc.zhendong;

import irdc.zhendong.R;
import android.app.Activity;
import android.app.Service;
import android.os.Bundle;
import android.os.Vibrator;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Toast;
import android.widget.ToggleButton;

public class zhendong extends Activity 
{
  private Vibrator mVibrator01;

  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState)
  {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);  
  
    /*设置ToggleButton的对象*/
    mVibrator01 = ( Vibrator )getApplication().getSystemService
    (Service.VIBRATOR_SERVICE);
  
    final ToggleButton mtogglebutton1 = 
    (ToggleButton) findViewById(R.id.myTogglebutton1);
  
    final ToggleButton mtogglebutton2 = 
    (ToggleButton) findViewById(R.id.myTogglebutton2);
  
    final ToggleButton mtogglebutton3 =
    (ToggleButton) findViewById(R.id.myTogglebutton3);
  
    /* 短震动 */
    mtogglebutton1.setOnClickListener(new OnClickListener()
    {
      public void onClick(View v) 
      {
        if (mtogglebutton1.isChecked())
        {
          /* 设置震动的周期 */
          mVibrator01.vibrate( new long[]{100,10,100,1000},-1);
          /*用Toast显示震动启动*/
          Toast.makeText
          (
            zhendong.this,
            getString(R.string.str_ok),
            Toast.LENGTH_SHORT
          ).show();
        }
        else
        {
          /* 取消震动 */
          mVibrator01.cancel();   
          /*用Toast显示震动已被取消*/
          Toast.makeText
          (
            zhendong.this,
            getString(R.string.str_end),
            Toast.LENGTH_SHORT
          ).show();
        } 
      }
    });
  
    /* 长震动 */
    mtogglebutton2.setOnClickListener(new OnClickListener()
    {
      public void onClick(View v) 
      {
        if (mtogglebutton2.isChecked())
        {
          /*设置震动的周期*/
          mVibrator01.vibrate(new long[]{100,100,100,1000},0);
        
          /*用Toast显示震动启动*/
          Toast.makeText
          (
            zhendong.this,
            getString(R.string.str_ok),
            Toast.LENGTH_SHORT
          ).show();
        }
        else
        {
          /* 取消震动 */
          mVibrator01.cancel();
          
          /* 用Toast显示震动取消 */
          Toast.makeText
          (
            zhendong.this,
            getString(R.string.str_end),
            Toast.LENGTH_SHORT
          ).show();
        } 
      }
    });  
    
    /* 节奏震动 */
    mtogglebutton3.setOnClickListener(new OnClickListener()
    {
      public void onClick(View v) 
      {
        if (mtogglebutton3.isChecked())
        {
          /* 设置震动的周期 */
          mVibrator01.vibrate( new long[]{1000,50,1000,50,1000},0);
        
          /*用Toast显示震动启动*/
          Toast.makeText
          (
            zhendong.this, getString(R.string.str_ok),
            Toast.LENGTH_SHORT
          ).show();
        }
        else
        {
          /* 取消震动 */
          mVibrator01.cancel();
          /* 用Toast显示震动取消 */
          Toast.makeText
          (
            zhendong.this,
            getString(R.string.str_end),
            Toast.LENGTH_SHORT
          ).show();
        } 
      }
    });
  }
}

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  >
  <!-- 建立第一個TextView -->
  <TextView  
  android:id="@+id/myTextView1" 
  android:layout_width="fill_parent" 
  android:layout_height="wrap_content" 
  android:text="@string/hello"
  />
  <!-- 建立第二個TextView -->
  <TextView
  android:id="@+id/myTextView2"
  android:layout_width="127px"
  android:layout_height="35px"
  android:layout_x="90px"
  android:layout_y="33px"
  android:text="@string/str_text1"
  />
  <!-- 建立第三個TextView -->
  <TextView
  android:id="@+id/myTextView3"
  android:layout_width="127px"
  android:layout_height="35px"
  android:layout_x="90px"
  android:layout_y="115px"
  android:text="@string/str_text2"
  />
  <!-- 建立第四個TextView -->
  <TextView
  android:id="@+id/myTextView4"
  android:layout_width="127px"
  android:layout_height="35px"
  android:layout_x="90px"
  android:layout_y="216px"
  android:text="@string/str_text3"
  />
  <!-- 建立第一個ToggleButton -->      
  <ToggleButton
  android:id="@+id/myTogglebutton1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content" 
  android:layout_x="29px"
  android:layout_y="31px"  
  />
  <!-- 建立第二個ToggleButton -->  
  <ToggleButton
  android:id="@+id/myTogglebutton2"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content" 
  android:layout_x="29px"
  android:layout_y="114px" 
  />
  <!-- 建立第三個ToggleButton -->  
  <ToggleButton
  android:id="@+id/myTogglebutton3"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content" 
  android:layout_x="29px"
  android:layout_y="214px"
  />
</AbsoluteLayout>

<?xml version="1.0" encoding="utf-8"?>
<manifest
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:versionCode="1"
  android:versionName="1.0.0" package="irdc.zhendong">
  <application
    android:icon="@drawable/icon"
    android:label="@string/app_name">
    <activity
      android:label="@string/app_name"
      android:name="irdc.zhendong.zhendong">
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>
  </application>
  <uses-permission android:name="android.permission.VIBRATE" />
</manifest> 








目录
相关文章
|
Java Android开发 图形学
unity 调用android的震动
在unity中调用震动一般有两种方式: 1.使用unity自带的 Handheld.Vibrate();优点:方便、简单缺点:无法控制震动的频率 2.自己导入jar包到unity中优点:便于后期的调节震动的频率缺点:如果是初步接触android studio可能比较麻烦 这次就不说Handheld.Vibrate(),直接调用就ok了。
3144 0
|
21小时前
|
XML 安全 Java
Android Studio App开发之广播组件Broadcast的讲解及实战(包括收发标准、有序、静态广播实现手机震动功能 附源码)
Android Studio App开发之广播组件Broadcast的讲解及实战(包括收发标准、有序、静态广播实现手机震动功能 附源码)
57 0
|
Android开发 调度 消息中间件
|
20小时前
|
存储 安全 Android开发
安卓应用开发:构建一个高效的用户登录系统
【5月更文挑战第3天】在移动应用开发中,用户登录系统的设计与实现是至关重要的一环。对于安卓平台而言,一个高效、安全且用户体验友好的登录系统能够显著提升应用的用户留存率和市场竞争力。本文将探讨在安卓平台上实现用户登录系统的最佳实践,包括对最新身份验证技术的应用、安全性考量以及性能优化策略。
|
20小时前
|
前端开发 Android开发 iOS开发
【Flutter前端技术开发专栏】Flutter在Android与iOS上的性能对比
【4月更文挑战第30天】Flutter 框架实现跨平台移动应用,通过一致的 UI 渲染(Skia 引擎)、热重载功能和响应式框架提高开发效率和用户体验。然而,Android 和 iOS 的系统差异、渲染机制及编译过程影响性能。性能对比显示,iOS 可能因硬件优化提供更流畅体验,而 Android 更具灵活性和广泛硬件支持。开发者可采用代码、资源优化和特定平台优化策略,利用性能分析工具提升应用性能。
【Flutter前端技术开发专栏】Flutter在Android与iOS上的性能对比
|
20小时前
|
存储 缓存 Java
安卓应用开发中的内存优化策略
【5月更文挑战第14天】在移动应用的开发过程中,尤其是对于资源受限的安卓平台,内存管理与优化是提升性能和用户体验的关键。本文将探讨针对安卓应用开发的内存优化技巧,包括避免内存泄漏、合理使用数据结构和算法、以及利用安卓系统的垃圾回收机制。通过这些方法,开发人员可以有效减少应用对系统资源的占用,从而延长电池寿命并提高应用的稳定性。