zoukankan      html  css  js  c++  java
  • Browser增加下载路径选择功能

    SWE Browser中有xml/download_settings_preferences.xml, 但在代码中却没有调用,导致“设置”中没有”选择下载路径“功能。

    在com.android.browser.preferences.GeneralPreferencesFragment增加”选择下载路径“功能

    /*add for download path choose*/
    private
    void onInitdownloadSettingsPreference() { addPreferencesFromResource(R.xml.download_settings_preferences); PreferenceScreen downloadPathPreset = (PreferenceScreen) findPreference(PreferenceKeys.PREF_DOWNLOAD_PATH); downloadPathPreset.setOnPreferenceClickListener(onClickDownloadPathSettings()); String downloadPath = downloadPathPreset.getSharedPreferences(). getString(PreferenceKeys.PREF_DOWNLOAD_PATH, BrowserSettings.getInstance().getDownloadPath()); String downloadPathForUser = DownloadHandler.getDownloadPathForUser(this.getActivity(), downloadPath); downloadPathPreset.setSummary(downloadPathForUser); } private Preference.OnPreferenceClickListener onClickDownloadPathSettings() { return new Preference.OnPreferenceClickListener() { public boolean onPreferenceClick(Preference preference) { try { Intent i = new Intent("com.android.fileexplorer.action.DIR_SEL"); GeneralPreferencesFragment.this.startActivityForResult(i, DOWNLOAD_PATH_RESULT_CODE); } catch (Exception e) { String err_msg = getResources().getString(R.string.activity_not_found, "com.android.fileexplorer.action.DIR_SEL"); Toast.makeText(getActivity(), err_msg, Toast.LENGTH_LONG).show(); } return true; } }; }
    /*end add */
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
            super.onActivityResult(requestCode, resultCode, data);
            mAdvFrag.onActivityResult(requestCode,resultCode, data);
            /*add for download path choose*/
            if (requestCode == DOWNLOAD_PATH_RESULT_CODE) {
                if (resultCode == Activity.RESULT_OK && data != null) {
                    String downloadPath = data.getStringExtra("result_dir_sel");
                    if (downloadPath != null) {
                        PreferenceScreen downloadPathPreset =
                                (PreferenceScreen) findPreference(PreferenceKeys.PREF_DOWNLOAD_PATH);
                        Editor editor = downloadPathPreset.getEditor();
                        editor.putString(PreferenceKeys.PREF_DOWNLOAD_PATH, downloadPath);
                        editor.apply();
                        String downloadPathForUser = DownloadHandler.getDownloadPathForUser(
                                this.getActivity(), downloadPath);
                        downloadPathPreset.setSummary(downloadPathForUser);
                    }
    
                    return;
                }
            }
            /*end add*/
        }

    onCreate中调用onInitdownloadSettingsPreference(),将download_settings_preferences.xml加到布局中。

    public void onCreate(Bundle savedInstanceState) {
            ......
    
            // Load the XML preferences file
            addPreferencesFromResource(R.xml.general_preferences);
    
            ......
            
            onInitdownloadSettingsPreference();//add for download path chhoose
        }
  • 相关阅读:
    Asp.net 动态添加Meta标签
    【转】在SharePoint Server 2010中更改“我的网站”
    SPQuery DateTime 类型查询
    Asp.net Web Application 打开 SharePoint 2010 Site 错误 The Web application at could not be found
    How To Create SharePoint 2010 Site Collection In Its Own DB
    C# 文件打印
    面试题 java集合
    《深入理解Java虚拟机》(六)堆内存使用分析,垃圾收集器 GC 日志解读
    《深入理解Java虚拟机》(五)JVM调优
    《深入理解Java虚拟机》(四)虚拟机性能监控与故障处理工具
  • 原文地址:https://www.cnblogs.com/antoon/p/4466745.html
Copyright © 2011-2022 走看看