【问题标题】:How to run function in Preference class from PreferenceActivity如何从 PreferenceActivity 在 Preference 类中运行函数
【发布时间】:2012-11-21 23:45:11
【问题描述】:

我们可以在 PreferenceActivity 中设置的 Preference 类型只有这么多。单击某个首选项后,我将尝试运行特定功能。有没有办法覆盖preferenceScreen 或editText onClick?

【问题讨论】:

  • 这就是 PrefrenceActivity 的用途。顺便说一句,我认为您的意思是方法不起作用?

标签: java android preferenceactivity dialog-preference


【解决方案1】:

是的,你可以。下面是一个简单示例,说明如何获取首选项引用并在点击事件上执行自定义代码。

public class ActivityPreferences extends PreferenceActivity
{
    protected void onCreate( Bundle savedInstanceState )
    {
        super.onCreate( savedInstanceState );
        addPreferencesFromResource( R.xml.preferences );

        Preference myPref = findPreference( "MY_PREF" );
        myPref.setOnPreferenceClickListener( new OnPreferenceClickListener()
        {
            public boolean onPreferenceClick( Preference pref )
            {
                  // Run your custom method
            }
        } );
    }
}

【讨论】:

  • 艾哈迈德,是的 - 方法对不起。罗伯特,“MY_PREF”必须是什么类型的偏好,这样就没有其他前任了。复选框被选中或文本字段随后弹出?谢谢
  • MY_PREF 是首选项键。 myPref 是顶级 Preference 类型。如果需要,您可以将其转换为您正在使用的任何 Preference 子类: CheckboxPreference myPref = (CheckboxPreference)findPreference( "MY_PREF" );
  • 但是是否有一个特定的子类没有可以打开和关闭的复选框等。一个主要用作 onClick 的子类。单击后不执行任何其他操作。
  • 是的,顶级 Preference。
  • @MorganCulbertson 请将答案标记为正确
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-09
  • 2012-04-26
  • 2018-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-08
相关资源
最近更新 更多