Android自定义SeekBar并控制声音
来源:互联网 发布:mac有剪切功能吗 编辑:程序博客网 时间:2024/05/31 18:50
先看自定义的seekbar
<SeekBar android:id="@+id/soundseekbar" android:layout_width="150dp" android:layout_height="wrap_content" android:layout_centerVertical="true" android:maxHeight="5dp" android:paddingLeft="5dp" android:paddingRight="5dp" android:progressDrawable="@drawable/voicebarbg" android:thumb="@drawable/voiceslid" />maxHeight可自己调节,不设这个属性seekbar有可能特别粗,达不到想要的效果。
thumb就是滑块的图片,progressDrawable是背景图片
voicebarbg.xml
<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background" android:drawable="@drawable/voicebg"> </item> <item android:id="@android:id/secondaryProgress" android:drawable="@drawable/voiceprogress"> </item> <item android:id="@android:id/progress" android:drawable="@drawable/voiceprogress"> </item> </layer-list>background是背景。secondaryProgress是第二背景,一般和progress进度一样。
也可以参考一下这个,自己定义颜色的
<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background" android:drawable="@drawable/progressbar"> </item> <item android:id="@android:id/secondaryProgress" > <clip> <shape> <corners android:radius="0dip" /> <gradient android:startColor="#800096ff" android:centerColor="#800096ff" android:centerY="0.75" android:endColor="#a00096ff" android:angle="270" /> </shape> </clip> </item> <item android:id="@android:id/progress" > <clip> <shape> <corners android:radius="0dip" /> <gradient android:startColor="#ff0096ff" android:centerColor="#ff0096ff" android:centerY="0.75" android:endColor="#ff0096ff" android:angle="270" /> </shape> </clip> </item> </layer-list>嗯这样一个自定义的seekbar就出来了。下面说说seekbar控制声音,获取系统声音管理器
AudioManager mAudioManager = (AudioManager) PlayVideoFullScreenAct.this.getSystemService(Activity.AUDIO_SERVICE);
最大声音值
int maxSound = mAudioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC);当前声音值
curSound = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);把最大声音值和当前声音值传给seekbar
soundbar=(SeekBar)findViewById(R.id.soundseekbar);soundbar.setMax(maxSound);soundbar.setProgress(curSound);然后写个seekbar的监听事件就ok了
soundbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {public void onStopTrackingTouch(SeekBar seekBar) {}public void onStartTrackingTouch(SeekBar seekBar) {}public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {if(fromUser){curSound = seekBar.getProgress();mAudioManager.setStreamVolume(AudioManager.STREAM_MUSIC,curSound, 0);}}});
- Android自定义SeekBar并控制声音
- Android中自定义SeekBar来控制音量,并与系统音量键的操作保持同步
- Android之自定义seekbar控制音量同步更新
- android中自定义SeekBar
- android 自定义SeekBar
- android 自定义SeekBar
- Android SeekBar自定义UI
- Android - 自定义SeekBar
- 【Android】自定义seekbar样式
- android 自定义SeekBar 问题
- Android 自定义SeekBar控件
- android,自定义seekbar,样式
- Android:自定义SeekBar样式
- Android SeekBar自定义UI
- Android 自定义seekbar样式
- Android 自定义SeekBar样式
- Android SeekBar自定义UI
- Android SeekBar 样式自定义
- Linux和windows双系统启动终极解决方法
- LDAjava代码
- 江南style印证法国大预言家诺查丹玛斯世界末日预言?
- webdynpro GOS BDS 文档/附件 上传下载处理
- vector::data
- Android自定义SeekBar并控制声音
- android样式学习(三) 手势滑动切换图片
- 新浪IP接口
- PHP读写XML文件
- JSTL学习笔记
- Linux中编写自动编译的makefile的方法,以及详细解析。
- codeforces 201 A Clear Symmetry
- 用iptables的raw表解决ip_conntrack: table full, dropping packet的问题
- procedure of object(一个特殊的指针类型)