- 浏览: 306681 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
开发小菜:
支持IE9以下的吗?
HTML5+CSS3+JQuery打造自定义视频播放器 -
攻城使:
开发Html5必须得下载么,我用dw编写,把文件复制到myec ...
html5开发 myeclipse安装aptana插件 -
疾风鹰狼:
...
根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码 -
sardodo:
你好,我想问下,导入例子中的.dae格式模型是可以看到旋转的小 ...
c3dl 初步认识 -
BIOHAZARDX:
下载学习,初学者膜拜一下。
html5 实现动画(三)
本篇基于 Android API 中的 AudioManager 作讲述,使看过本篇的读者可以迅速的掌握这个类的实现过程。下面是本篇大纲: * 1、认识 AudioManager * 2、AudioManager 主要方法介绍 * 3、程序逻辑实现过程 1、认识 AudioManager AudioManager 类位于 android.Media 包中,该类提供访问控制音量和钤声模式的操作。 2、AudioManager 主要方法介绍 由于 AudioManager 该类方法过多,这里只讲述几个比较常用到的方法: * 方法:adjustVolume(int direction, int flags) 解释:这个方法用来控制手机音量大小,当传入的第一个参数为 AudioManager.ADJUST_LOWER 时,可将音量调小一个单位,传入 AudioManager.ADJUST_RAISE 时,则可以将音量调大一个单位。 * 方法:getMode() 解释:返回当前音频模式。 * 方法:getRingerMode() 解释:返回当前的铃声模式。 * 方法:getStreamVolume(int streamType) 解释:取得当前手机的音量,最大值为7,最小值为0,当为0时,手机自动将模式调整为“震动模式”。 * 方法:setRingerMode(int ringerMode) 解释:改变铃声模式 3、程序逻辑实现过程 界面上设置了一个图片,表示当前铃声状态,一个进度条表示当前音量大小,五个图片按钮,用来表示增加/减小音量、普通模式、静音模式和震动模式。下面是界面的 XML 布局代码: < ?xml version="1.0" encoding="utf-8"?> < AbsoluteLayout android:id="@+id/layout1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/white" xmlns:android="http://schemas.android.com/apk/res/android" > < TextView android:id="@+id/myText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/str_text1" android:textSize="16sp" android:textColor="@drawable/black" android:layout_x="20px" android:layout_y="42px" > < /TextView> < ImageView android:id="@+id/myImage" android:layout_width="48px" android:layout_height="48px" android:layout_x="110px" android:layout_y="32px" > < /ImageView> < TextView android:id="@+id/myText2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/str_text2" android:textSize="16sp" android:textColor="@drawable/black" android:layout_x="20px" android:layout_y="102px" > < /TextView> < ProgressBar android:id="@+id/myProgress" style="?android:attr/progressBarStyleHorizontal" android:layout_width="160dip" android:layout_height="wrap_content" android:max="7" android:progress="5" android:layout_x="110px" android:layout_y="102px" > < /ProgressBar> < ImageButton android:id="@+id/downButton" android:layout_width="100px" android:layout_height="100px" android:layout_x="50px" android:layout_y="162px" android:src="@drawable/down" > < /ImageButton> < ImageButton android:id="@+id/upButton" android:layout_width="100px" android:layout_height="100px" android:layout_x="150px" android:layout_y="162px" android:src="@drawable/up" > < /ImageButton> < ImageButton android:id="@+id/normalButton" android:layout_width="60px" android:layout_height="60px" android:layout_x="50px" android:layout_y="272px" android:src="@drawable/normal" > < /ImageButton> < ImageButton android:id="@+id/muteButton" android:layout_width="60px" android:layout_height="60px" android:layout_x="120px" android:layout_y="272px" android:src="@drawable/mute" > < /ImageButton> < ImageButton android:id="@+id/vibrateButton" android:layout_width="60px" android:layout_height="60px" android:layout_x="190px" android:layout_y="272px" android:src="@drawable/vibrate" > < /ImageButton> < /AbsoluteLayout> 程序类分别为: 1、viewHolder 界面上的所有控件和元素都在这里静态声明 package com.terry; import android.media.AudioManager; import android.widget.ImageButton; import android.widget.ImageView; import android.widget.ProgressBar; public class viewHolder { public static ImageButton downButton; public static ImageButton upButton; public static ImageButton normalButton; public static ImageButton muteButton; public static ImageButton vibrateButton; public static ProgressBar myProgressBar; public static ImageView myImageView; public static AudioManager audiomanage; } 2、AudioManagerActivity 程序入口处,和主要逻辑代码的处理,程序开头以 (AudioManager)getSystemService(AUDIO_SERVICE); 取得 AudioManager 对象。然后再利用该对象来对铃声进行调整。声明了一个返回 ImageButton 的方法,用来处理各自按钮点击所执行的不同事件和对图片的状态进行调整设置。以下把代码提供给大家: package com.terry; import android.app.Activity; import android.media.AudioManager; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageButton; import android.widget.ImageView; import android.widget.ProgressBar; public class AudioManagerActivity extends Activity { //音量变量 private int volume=0; //声音模式 private int mode; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); findview(); //通过getStreamVolume 获得当前音量大小 volume=viewHolder.audiomanage.getStreamVolume(AudioManager.STREAM_RING); //把当前音量的值 设置给进度条 viewHolder.myProgressBar.setProgress(volume); //得到当前的声音模式 mode=viewHolder.audiomanage.getRingerMode(); setImageState(); viewHolder.downButton=btnListener(viewHolder.downButton); viewHolder.upButton=btnListener(viewHolder.upButton); viewHolder.muteButton=btnListener(viewHolder.muteButton); viewHolder.normalButton=btnListener(viewHolder.normalButton); viewHolder.vibrateButton=btnListener(viewHolder.vibrateButton); } //找到控件 void findview(){ viewHolder.downButton=(ImageButton)findViewById(R.id.downButton); viewHolder.upButton=(ImageButton)findViewById(R.id.upButton); viewHolder.muteButton=(ImageButton)findViewById(R.id.muteButton); viewHolder.normalButton=(ImageButton)findViewById(R.id.normalButton); viewHolder.vibrateButton=(ImageButton)findViewById(R.id.vibrateButton); viewHolder.myImageView=(ImageView)findViewById(R.id.myImage); viewHolder.myProgressBar=(ProgressBar)findViewById(R.id.myProgress); viewHolder.audiomanage=(AudioManager)getSystemService(AUDIO_SERVICE); } //按钮 的单击事件 ImageButton btnListener(ImageButton b){ b.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.downButton: viewHolder.audiomanage.adjustVolume(AudioManager.ADJUST_LOWER, 0); volume=viewHolder.audiomanage.getStreamVolume(AudioManager.STREAM_RING); viewHolder.myProgressBar.setProgress(volume); mode=viewHolder.audiomanage.getRingerMode(); setImageState(); break; case R.id.upButton: viewHolder.audiomanage.adjustVolume(AudioManager.ADJUST_RAISE, 0); volume=viewHolder.audiomanage.getStreamVolume(AudioManager.STREAM_RING); viewHolder.myProgressBar.setProgress(volume); mode=viewHolder.audiomanage.getRingerMode(); setImageState(); break; case R.id.muteButton: viewHolder.audiomanage.setRingerMode(AudioManager.RINGER_MODE_SILENT); volume=viewHolder.audiomanage.getStreamVolume(AudioManager.STREAM_RING); viewHolder.myProgressBar.setProgress(volume); viewHolder.myImageView.setImageDrawable(getResources().getDrawable(R.drawable.mute)); break; case R.id.normalButton: viewHolder.audiomanage.setRingerMode(AudioManager.RINGER_MODE_NORMAL); volume=viewHolder.audiomanage.getStreamVolume(AudioManager.STREAM_RING); viewHolder.myProgressBar.setProgress(volume); viewHolder.myImageView.setImageDrawable(getResources().getDrawable(R.drawable.normal)); break; case R.id.vibrateButton: viewHolder.audiomanage.setRingerMode(AudioManager.RINGER_MODE_VIBRATE); volume=viewHolder.audiomanage.getStreamVolume(AudioManager.STREAM_RING); viewHolder.myProgressBar.setProgress(volume); viewHolder.myImageView.setImageDrawable(getResources().getDrawable(R.drawable.vibrate)); break; } } }); return b; } //设置图片状态 void setImageState(){ if(mode==AudioManager.RINGER_MODE_NORMAL) { viewHolder.myImageView.setImageDrawable(getResources().getDrawable(R.drawable.normal)); } else if(mode==AudioManager.RINGER_MODE_SILENT) { viewHolder.myImageView.setImageDrawable(getResources().getDrawable(R.drawable.mute)); } else if(mode==AudioManager.RINGER_MODE_VIBRATE) { viewHolder.myImageView.setImageDrawable(getResources().getDrawable(R.drawable.vibrate)); } } }
发表评论
-
在Android中扫描wifi热点演示实例教程
2011-07-23 17:09 29382011-07-13 08:42 1、首先 ... -
程序控制媒体音量
2011-07-15 09:39 866setVolumeControlStream(AudioMan ... -
android scale实现翻牌动画效果
2011-07-14 09:55 2978http://livehappy.iteye.com/blog ... -
Android利用VideoView实现VideoPlayer
2011-07-14 09:41 1942Android利用VideoView实现VideoPlay ... -
Android平台SoundPool . MediaPlayer
2011-07-05 14:58 5798Android平台中关于音频 ... -
Scroll,
2011-07-05 11:31 1256属性名称 描述 android:backgro ... -
关于android中的gif实现
2011-06-27 14:33 1646在android里面能不能使用gif图像?这个问题好像不行 ... -
Android 教你如何通过 LocationManager 获取得到当前位置坐标
2011-06-23 13:32 3444Android的强大表现在各个方面,在这里介绍一下其中的一 ... -
Android提供了Animation
2011-06-22 16:02 854关于动画的实现,Android提供了Animation, ... -
Android的animation由四种类型组成
2011-06-22 15:58 910程基础--AnimationAndroid 动画类型 Andr ... -
ViewFlipper结合手势OnGestureListener制作的滑动切换效果
2011-06-20 13:38 1399文章分类:移动开发 先要了解ViewFlipp ... -
我的android小做--魔法药水
2011-04-08 14:48 0刚刚接触Android -
Android 密度转换多分辨率
2011-03-25 10:54 1442import android.content.Context ... -
Android 密度转换实例
2011-03-25 10:53 1200实现步骤: 第一步:建立Android 工程:Disp ... -
Android 密度转换 java文件
2011-03-25 10:52 1030package com.vinvo.android.games ... -
Android 密度转换
2011-03-25 10:50 1577Android屏幕密度(Density)和分辨率的解释操作系统 ... -
八款开源Android游戏引擎
2011-03-24 12:02 856很多初学 Android 游戏(gam ... -
Android OpenGL
2011-03-24 11:48 9991、什么是 OpenGL? OpenGL 是个专业的3D程 ... -
AdMob广告添加流程
2011-03-18 10:04 1201AdMob广告添加流程 我已经很详细的坐了个中文文档,如果你 ...
相关推荐
在Android平台上,AudioManager类是系统提供的用于管理音频输出的关键组件。它提供了各种接口和方法,使得开发者能够控制系统的音频属性,包括调整音量。在本文中,我们将深入探讨如何使用AudioManager来修改系统...
Android 音量控制是一个非常重要的功能,通过使用 AudioManager 类可以实现音量控制,并且可以自定义音量控制。通过本篇文章,读者可以快速掌握 Android 音量控制的实现过程,并且可以应用于实际的 Android 开发中。
在Android中,音量是通过AudioManager类来管理的。我们需要获取AudioManager实例,并调用其`getStreamMaxVolume()`方法获取特定音量类型的最大值,如`AudioManager.STREAM_MUSIC`代表媒体音量。同样,使用`...
AudioManager 类位于 android.Media 包中,该类提供访问控制音量和钤声模式的操作 以下分别是AudioManager设置声音模式和调整声音大小的方法。 如何获取声音管理器: AudioManager audioManager = ...
在Android开发中,有时我们需要对系统的音量进行自定义控制,比如使用Seekbar来模拟音量调节滑块,同时能够根据不同的场景(如媒体播放、通话中)智能切换控制对应的音量。本教程将深入讲解如何实现这个功能,主要...
在Android平台上,调整系统...总结,Android系统音量和媒体音量的控制涉及到`AudioManager`类的使用,理解其API和音量类别是实现此功能的关键。通过源码分析和实际运行,开发者可以更直观地学习和掌握这一功能的实现。
在Android中,我们可以使用`AudioManager`类来获取不同类型的音量,具体实现如下: ```java // 获取AudioManager实例 AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE); // 通话音量 ...
- Android提供了`AudioManager`类来管理设备的音频输出,包括音量控制。通过调用`AudioManager`的方法,我们可以实现程序中动态调整音量: - `adjustVolume(int direction, int flags)`:根据参数`direction`(如`...
Android 静音控制 音量控制 减小增大音量的实例源代码,如示图所示,音量控制时候,适时显示音量进度条: ToggleButton tbMute = (ToggleButton)findViewById(R.id.tbMute);//获得ToggleButton对象 tbMute....
可以使用`AudioManager`类提供的`setStreamVolume()`方法来设置特定音量流(如MediaPlayer的音频流)的音量。 5. **权限管理**:在Android 6.0及以上版本,访问音量控制可能需要请求运行时权限。确保在代码中适当地...
在Android操作系统中,控制设备的亮度、音量以及开关功能如GPS和WiFi是常见的操作,这对于用户来说至关重要,因为它们直接影响到设备的使用体验。本文将深入探讨如何在Android平台上实现这些功能。 首先,让我们来...
对于音量调节,Android提供了一系列的`AudioManager`类的方法,如`adjustVolume(int direction, int flags)`或`setStreamVolume(int streamType, int index, int flags)`。前者可以根据用户滑动的方向增加或减少音量...
为了实现音量控制功能,Android提供了AudioManager类,该类提供了大量与音频管理相关的API。例如,`AudioManager.getStreamVolume(int streamType)`可以获取指定类型的音量值,而`AudioManager.setStreamVolume(int ...
1. **音量获取与设置**:使用Android系统的AudioManager服务来获取当前音量,并可以调用其方法改变音量级别。例如,`AudioManager.getStreamVolume(AudioManager.STREAM_MUSIC)`获取音乐流的音量,`AudioManager....
开发者通常需要使用AudioManager类来操作这些音量流。 1. **AudioManager的使用**: - `getStreamMaxVolume(int streamType)`:获取指定音量流的最大值。 - `getStreamVolume(int streamType)`:获取指定音量流...
在Android系统中,音量控制、定时、震动、静音以及铃声等元素构成了用户交互的重要部分,而情景模式的设置则进一步提升了用户体验。本文将深入探讨这些知识点,并结合一个小型示例进行解析。 首先,音量控制是...
3. **音量控制**:Android系统的音量管理是通过`AudioManager`类实现的。首先,你需要获取一个`AudioManager`实例,然后调用`getStreamVolume()`方法获取当前音量,`setStreamVolume()`方法设置新的音量值。音量流...
在Android应用开发中,音量控制通常涉及到AudioManager类,该类提供了调节系统各种音量流(如媒体音量、闹钟音量等)的方法。在iOS开发中,我们可以使用AVFoundation框架来控制音量。开发者可以通过这些API获取当前...
4. 使用`AudioManager`控制音量。 5. 可选:添加额外功能,如显示音量百分比、动态调整滑块大小等。 6. 在布局文件中引用`VolumeView`。 7. 声明`VolumeView`所在的包名。 通过以上步骤,我们可以创建出一个既美观...
3. 音量管理:在Android中,我们可以使用AudioManager类来获取和设置音量。首先,需要获取AudioManager实例,然后调用getStreamVolume()获取当前音量,setStreamVolume()来设置新的音量。音量有多个流类型,如STREAM...