简体   繁体   English

在首选项屏幕中从SD卡中选择.mp3文件

[英]Pick .mp3 file from sdcard in preferencescreen

How i can pick mp3 file from sdcard in android preferenceScreen menu.. 我如何从android preferenceScreen菜单中的sdcard中选择mp3文件。

here is my preferenceScreen: 这是我的首选项屏幕:

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
        <PreferenceCategory android:title="@string/app_setting">

            <Preference android:title="@string/ChooseRingtone"
                android:key="sdPref" />

        </PreferenceCategory>
</PreferenceScreen>

here my SettingActivity: 这是我的SettingActivity:

public class SettingsActivity extends AppCompatPreferenceActivity{
      @Override
    public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) {
        super.onCreate(savedInstanceState, persistentState);
        if(savedInstanceState == null){
            android.app.Fragment infoFragment = new MyPreferenceFragment();
            FragmentTransaction ft = getFragmentManager().beginTransaction();
            ft.add(R.id.fragment_container, infoFragment);
            ft.commit();
        }
      public static class MyPreferenceFragment extends PreferenceFragment {

        private AppSettings settings;

        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            addPreferencesFromResource(R.xml.pref);

            Preference sdPrefs = findPreference("sdPref");
            sdPrefs.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
                @Override
                public boolean onPreferenceClick(Preference preference) {
                    return false;
                }
            });
        }
}

what i dont know is how to open sdcard and choose only .mp3 extension files from whole sdcard. 我不知道如何打开sdcard并从整个sdcard中仅选择.mp3扩展名文件。 and how to store that mp3 file to my asset/raw directory if it possible 以及如何将mp3文件存储到我的资产/原始目录中

Try below code for selecting only mp3 files, 尝试以下代码以仅选择mp3文件,

       sdPrefs.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
            @Override
            public boolean onPreferenceClick(Preference preference) {

                 Intent intent_upload = new Intent();
                 //intent_upload.setType("audio/*"); // For All Audio Files
                 intent_upload.setType("audio/mp3"); // For only MP3 Files
                 intent_upload.setAction(Intent.ACTION_GET_CONTENT);
                 startActivityForResult(intent_upload,1);
                 return false;
            }
        });

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM