首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在PreferenceScreen中显示crouton

在PreferenceScreen中显示crouton
EN

Stack Overflow用户
提问于 2013-12-04 11:08:44
回答 1查看 147关注 0票数 0

我使用Crouton库向用户显示警告消息。在这种情况下,我希望在特定的首选项屏幕中显示。我在我的PreferenceActivity中编写了以下代码

但是,Crouton只显示在第一个首选项屏幕上,而不显示在实际触发Crouton的子首选项屏幕上。有什么办法解决这个问题吗?

代码语言:javascript
复制
       findPreference(key.key).setOnPreferenceChangeListener(new OnPreferenceChangeListener()
        {

            @Override
            public boolean onPreferenceChange(Preference preference, Object newValue)
            {
                int count = 0;
                for (ANALYTICS_KEYS key : ANALYTICS_KEYS.values())
                {
                    if (appPreferences.getAnalyticProperty(key))
                    {
                        count++;

                    }
                }

                Crouton crouton = null;
                if (count > 5 && count < 7)
                {
                    Style.Builder style = new Builder(Style.INFO).setConfiguration(new Configuration.Builder().setDuration(Configuration.DURATION_INFINITE).build());

                    crouton = Crouton.makeText(DashAnalyticsPreferenceActivity.this, "More than 5 attributes might not be visible", style.build());

                }
                else if (count > 7)
                {
                    crouton = Crouton.makeText(DashAnalyticsPreferenceActivity.this, "More than 7 attributes are not allowed. Only first 7 will be considered", Style.ALERT);
                }
                else
                    Crouton.cancelAllCroutons();

                if (crouton != null)
                {
                    crouton.show();
                    crouton.setOnClickListener(new View.OnClickListener()
                    {
                        @Override
                        public void onClick(View v)
                        {

                            //Crouton.hide(crouton);
                        }
                    });
                }

                return true;
            }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-04 12:04:42

Crouton被附加到Activites视图。因此,它将只显示在为创建它而传递的Activity中。

如果要在其他Crouton中显示Activity,则必须将相应的Activity传递给它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20373714

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档