繁体   English   中英

如何在Android的偏好屏幕中找到偏好类别?

[英]How to locate the preference category in a preference screen in Android?

我在通知区域中实现了一个通知,可以单击该通知并转到“声音设置”首选项活动。 此页面中有几个类别,我该如何精确滚动至某个类别或首选项? 如果我不注意而仅启动声音设置,则无法立即看到我想要的类别。

如果SettingsActivity是您的自定义活动,则可以

getListView().setSelection(i);

如果您的意思是原生android声音设置,我认为您不能。

要滚动到某个类别,我认为您必须做这样的事情

PreferenceCategory category = (PreferenceCategory)findPreference("you_category_key");
        for (int i = 0; i <  getPreferenceScreen().getRootAdapter().getCount(); i++){
            Object o = getPreferenceScreen().getRootAdapter().getItem(i);
            if (o instanceof PreferenceCategory ){
                if (o.equals(category)){
                    getListView().setSelection(i);
                }
            }
        }

但是不幸的是,这段代码在onCerate和onResume中无效,不知道为什么。 尝试将此代码粘贴到其他地方。

试试看,希望对您有所帮助。

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
            Intent intent = new Intent(Settings.ACTION_SOUND_SETTINGS);
        startActivity(intent);

    }

暂无
暂无

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

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