imageView を使用してカスタム設定レイアウトを作成しました。
<Preference
...
android:key="pref_custom"
android:layout="@layout/preference_layout"
>
onCreate 内の自分の PreferenceActivity で、CustomPreference ImageView を変更したいと考えています。
問題は、以下のコードが常に null を返すことです。
imageViewSmallContact = (ImageView) findViewById(R.id.ImageViewSmallContact);
OnPreferenceClickListener.onPreferenceClick
この ImageView は、メソッド my pref_custom Preference内でのみ見つけることができます。
私のクラスのConfigureActivity(PreferenceActivityを拡張)では、onCreateメソッドで私だけが持っています":
...
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
updatePreferenceView(); // here I update all my preferences `
...
私の PreferenceActivity onCreate メソッドで、自分の設定を読み取ります
Preference pref= findPreference("pref_phone_");
この 1 つの設定のカスタム レイアウトで画像を変更したいよりも。
imageViewSmallContact = (ImageView) findViewById(R.id.ImageViewSmallContact);
ここで imageViewSmallContact は null を返します。
次に、この設定で OnPreferenceClickListener を登録します
onPreferenceClick 内 findViewById(R.id.ImageViewSmallContact); 正しい値を返します。
私の質問は:
このレイアウトを初期化して PreferenceActivity から imageView を取得するにはどうすればよいですか?