Android 如何在holoeverywhere中查找dReference()?
FindReference(R.id.myprefid)在我的holoeverywhere首选项活动中始终返回null。我找不到FindReference的示例。以下是我的首选xml:Android 如何在holoeverywhere中查找dReference()?,android,android-preferences,android-holo-everywhere,Android,Android Preferences,Android Holo Everywhere,FindReference(R.id.myprefid)在我的holoeverywhere首选项活动中始终返回null。我找不到FindReference的示例。以下是我的首选xml: 我按计划做了一切,但还是没有成功 请建议解决方案或参考使用holoeverywhere的FindReference()的示例应用程序。(我在演示应用程序中找不到)更新版本2: package ca.imaginauts.smartmed.fragments; import org.holoeverywh
我按计划做了一切,但还是没有成功
请建议解决方案或参考使用holoeverywhere的FindReference()的示例应用程序。(我在演示应用程序中找不到)更新版本2:
package ca.imaginauts.smartmed.fragments;
import org.holoeverywhere.preference.EditTextPreference;
import org.holoeverywhere.preference.PreferenceFragment;
import android.os.Bundle;
import ca.imaginauts.smartmed.R;
public class SettingFragment extends PreferenceFragment
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.setting3);
EditTextPreference email = (EditTextPreference)findPreference("acra.user.email");
email.setText("Hello World");
}
}
内部设置3.xml
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:holo="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android" >
<EditTextPreference
holo:id="@+id/examiner_preference"
android:inputType="textCapWords|textPersonName"
holo:dialogTitle="examiner_dialogTitle"
holo:key="examiner_preference"
holo:summary="examiner_summary"
holo:title="examiner_name" />
<EditTextPreference
holo:id="@+id/email"
android:inputType="textEmailAddress"
holo:dialogTitle="prefs__title"
holo:key="acra.user.email"
holo:summary="pref_a_summary"
holo:title="pref_aemail" />
</PreferenceScreen>
我还没有找到具体的原因,但我在使用holo:keys时没有遇到性能或bug方面的问题。对你来说可能是一种妥协 如上所述,它仍然返回null。我在onCreate()中使用findReference()。是这样吗?你能发布你的首选活动代码吗?你提到你使用FindReference(R.id.myprefid),我是说使用FindReference(“holo key string”)。我将用一些示例代码更新我的问题。我用示例代码更新我的答案,您是否仍遇到问题?如果是这样的话,您使用的是什么设备和Android版本?我使用PreferenceActivity而不是PreferenceFragment。我使用标题来构建prefs。这可能是问题所在。我在emulator中的Android 4.2.1和我的galaxy s2中的4.1上运行。感谢您花时间:-)如果尚未发布,您可以发布您的PreferenceActivity代码和headers.xml吗。
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:holo="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android" >
<EditTextPreference
holo:id="@+id/examiner_preference"
android:inputType="textCapWords|textPersonName"
holo:dialogTitle="examiner_dialogTitle"
holo:key="examiner_preference"
holo:summary="examiner_summary"
holo:title="examiner_name" />
<EditTextPreference
holo:id="@+id/email"
android:inputType="textEmailAddress"
holo:dialogTitle="prefs__title"
holo:key="acra.user.email"
holo:summary="pref_a_summary"
holo:title="pref_aemail" />
</PreferenceScreen>
EditTextPreference emailPrefs = (EditTextPreference)findPreference("acra.user.email");