首选项 - 使用媒体文件,图像

时间:2011-12-06 00:00:11

标签: android file path preferences audio

我是新开发者,所以我的问题可能太基础了。 我找一下定义声音偏好的例子。例如,用户可以选择启动应用程序的声音类型。可以有这样的RingtonPreference widjet,因此用户可以选择声音。 据我所知,首选项支持基本类型:Boolean,string,float,long和integer。设计首选项的最佳方式是:在条目中存储声音(字符串)中的名称,Resourse类(整数)中的文件地址或其他方式。 请提供一个简短的代码示例。 提前谢谢!

首先感谢您快速详细的解答! 我想安排声音列表:必须有一个“无”,包含文件夹“raw”的声音列表,从不同位置添加新声音的选项和两个按钮:“set”和“cancel”。当用户触摸列表中的一个项目时 - 声音开始播放。 提供android库的标准小部件有一点问题。 “ListPreference”不合适,因为触摸其中一个项目 - 选择项目并关闭列表,“没有按钮设置和取消”。 “RingtonPreference”也不合适 - 我没有成功添加内容列表。 如何构建自定义首选项布局,选择的选项将保存在标准窗口小部件上。请提供一个简短的代码示例。提前谢谢!

1 个答案:

答案 0 :(得分:1)

我认为存储资源的最佳方法是整数。或者你可以做名字。

我认为整数更可靠。

因此,要使用SharedPreference,您需要访问应用SharedPreference

public class PreferencesDemo extends Activity {

SharedPreferences app_preferences;
private int resourceNumber;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // Get the app's shared preferences

   SharedPreferences app_preferences = PreferenceManager.getDefaultSharedPreferences(this);

   resourceNumber = app_preferences.getInt("resourceNumber", 0);

   if(resourceNumber == 0){

   //This means the user hasnt selected a song and you must act accordingly. Or put a resource number where the 0 is do set it to a default song

    }

您可能想要创建一种方法将歌曲放在SharedPreference中,例如;

  private void createSongResouces(){

   SharedPreferences.Editor editor = app_preferences.edit();
    //Here you can put as many songs as you want just make sure you call editor.commit(); as i do.

    editor.putInt("resourceNumber", resourceNumber);
    editor.commit(); // Very important
}