【问题标题】:How to open default browser options on preference changed?如何在偏好更改时打开默认浏览器选项?
【发布时间】:2021-08-21 22:22:51
【问题描述】:

您好,我正在尝试打开单击 SwitchPreferenceCompat 上的默认浏览器选项。这样用户就可以选择应用程序并设置为默认值。 这是我的代码:

// prefs
<androidx.preference.PreferenceScreen
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto">

    <PreferenceCategory
        android:title="General Settings">

        <SwitchPreferenceCompat
            app:key="default_browser"
            app:title="Set Default Browser"
            app:defaultValue="false">

        </SwitchPreferenceCompat>

    </PreferenceCategory>

</androidx.preference.PreferenceScreen>

和设置活动:

class SettingsActivity : AppCompatActivity() {
..
        supportFragmentManager
            .beginTransaction()
            .replace(R.id.settings, SettingsFragment())
            .commit()

        ...
    }

    class SettingsFragment : PreferenceFragmentCompat() {
        override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
            setPreferencesFromResource(R.xml.prefs, rootKey)
            
        }

override fun onPreferenceTreeClick(preference: Preference?): Boolean {
            when (preference!!.key) {
                "default_browser" -> {

                    return true
                }
        }
return super.onPreferenceTreeClick(preference)
} 
...
}

提前致谢。

【问题讨论】:

    标签: android kotlin browser webview settings


    【解决方案1】:

    找到了解决办法:

    when (preference!!.key) {
                "default_browser" -> {
                    return try {
                        val intent = Intent(Settings.ACTION_MANAGE_DEFAULT_APPS_SETTINGS)
                        requireContext().startActivity(intent)
                        true
                    } catch (e: ActivityNotFoundException) {
                        view?.snack("Error")
                       false
                    }
                }
             }
    

    【讨论】:

      猜你喜欢
      • 2023-03-10
      • 2011-07-01
      • 1970-01-01
      • 2015-10-24
      • 1970-01-01
      • 2018-03-18
      • 2011-06-02
      • 1970-01-01
      相关资源
      最近更新 更多