android 首选项 RingtonePreference

http://byandby.iteye.com/blog/1045383

RingtonePreference 专门处理铃声。可以在应用程序中使用它为用户提供一个选项,以便选择某个铃声作为首选项,觉得这个还是比较有用的。 

     下面是我们这个示例的XML 文件 ringtone.xml 此文件的存放路径是 /res/xml/ringtone.xml  

Xml代码   收藏代码
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:key="ringtong_option_preference" android:title="My Preference"  
  4.     android:summary="Set Ring Tone Preferences">  
  5.     <RingtonePreference   
  6.          android:key="ring_tone_pref"  
  7.          android:title="Set Ringtone Preference"   
  8.          android:showSilent="true"  
  9.          android:ringtoneType="alarm"  
  10.          android:summary="Set Ringtone" />  
  11. </PreferenceScreen>  


  下面是我们的 PreferenceActivity 类 RingtonePreferenceActivity 
Java代码   收藏代码
  1. package xiaohang.zhimeng;  
  2.   
  3. import android.os.Bundle;  
  4. import android.preference.PreferenceActivity;  
  5.   
  6. public class RingtonePreferenceActivity extends PreferenceActivity {  
  7.   
  8.     @Override  
  9.     protected void onCreate(Bundle savedInstanceState) {  
  10.         super.onCreate(savedInstanceState);  
  11.         addPreferencesFromResource(R.xml.ringtone);  
  12.     }  
  13. }  

   下面给大家看一下运行效果。 

 

 

    当用户选择 Set Ringtone Preference时,首选项框架将显示一个 ListPreference,其中包含设备上的铃声。用户可以选择一个铃声,然后选择 确定 或 取消 按钮。如果点击 确定 按钮 所做的选择将持久化到首选项存储中。请注意,使用铃声,首选项中存储的值是所选铃声的URI,除非选择 Silent 也就是静音,对于这种情况,存储的值为 空字符串,下面来两张图 当我们选择静音的时候 看看给我们存储是什么 。 

 
大家稍微仔细一看就可以看出 给我们存储是 空字符串 

  下面在看看 当我们选择 一个铃声的时候 存储的是什么 

 
从上图 就可以看出 存储的是一个 URI   content://media/external/audio/media/3  

   如果大家的模拟器里边没有铃声,可以自己添加,将音乐文件复制到 SD 卡, 然后再 打开模拟器上边的音乐 播放器 

 

然后 随便打开一首歌曲 点击 Menu按钮 选择 用作铃声  就可以设置为铃声了。 

 

   大家可能发现了 RingtonePreference 有一些属性 和其它的首选项不太一样 比如 showSilent 和  ringtoneType 。可以使用 showSilent在铃声列表中包含静音铃声,使用 ringtoneType 来限制在列表中显示的铃声类型。此属性的可能值包括 ringtone、notification、alarm和all。 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值