これはそれほど問題ではありませんが、私はこれを行う正しい方法を見つけようとしています。
私は次の状況にあります:
public class SettingsDialogFragment extends DialogFragment implements OnCheckedChangeListener {
...
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.settings, container);
...
CheckBox lBox1 = (CheckBox)view.findViewById(R.id.checkBox1);
lBox1.setOnCheckedChangeListener(this);
lBox1.setChecked(true);
return view;
}
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
....
}
私が抱えている「問題」はsetChecked(true)
、onCheckChangedを呼び出すことですでに起動することです。レイアウトを膨らませるCheckBox
と、はfalse設定で初期化され、それをtrueに変更するのは実際にCheckedChanged
イベントだと思います。
もちろん、初期値を設定した後で順序を変更してリスナーを割り当てることもできますが、さまざまなコンポーネントの初期値を渡しながら、レイアウトを膨らませる方法はありますか?それらは動的であるため、settings.xmlの特定の値に値を固定することはできません
乾杯