我在试图获取参考的 SharedPreferences 布局文件中有一个 ImageView,因此我可以在我的 PrefsActivity 类中创建一个侦听器。到目前为止,我没有任何运气使用 findViewById 获得参考,一切都返回为空。
设置如下所示:
PrefsActivity.class
public class PrefsActivity extends UnifiedSherlockPreferenceActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
// Set header resource MUST BE CALLED BEFORE super.onCreate
setHeaderRes(R.xml.pref_headers);
// Set desired preference file and mode (optional)
setSharedPreferencesName("my_prefs");
setSharedPreferencesMode(Context.MODE_PRIVATE);
super.onCreate(savedInstanceState);
ACRA.init(getApplication());
getSupportActionBar().setDisplayShowCustomEnabled(true);
getSupportActionBar().setIcon(R.drawable.new);
getSupportActionBar().setDisplayShowTitleEnabled(false);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
pref_headers.xml
<preference-headers xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:unified="http://schemas.android.com/apk/res-auto" >
<header
unified:fragment="com.my.app.PrefsActivity$GeneralPreferenceFragment"
unified:title="@string/pref_header_general"
unified:preferenceRes="@xml/pref_general" />
pref_general.xml
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
<PreferenceCategory
android:title="Category Title"
android:layout="@layout/settings_message"
<EditTextPreference
android:capitalize="words"
android:defaultValue=""
android:inputType="textCapWords"
android:key="first_name"
android:maxLines="1"
android:selectAllOnFocus="true"
android:singleLine="true"
android:title="@string/first_name" />
settings_message.xml
这包含我试图获得参考的按钮 btnTutorial
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/tvSettingsMessage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20px"
android:text="@string/settings_text" />
<Button
android:id="@+id/btnTutorial"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20px"
android:text="@string/settings_button_text" />