私はListView
いくつかを持っていCheckBoxes
ます。の各行をクリックすると、のテキストListView
を に保存したいと思います。CheckBox
String
ListView
ユーザーがそれ自体をクリックできるように、行をフォーカス不可に設定しましたCheckBox
。CheckBox
ユーザー自身がチェックを付けたり外したりすることはできませんが、代わりに、ユーザーがそれをクリックすると、データを入力する必要がある別のアクティビティにつながります。ブール値を返すことで、ユーザーがデータを入力しているかどうかを確認しています。
値が true の場合、チェックボックスをオンに設定する必要があります。そのためには、CheckBox
実際にチェックする前に、のテキストを別の文字列値と比較する必要があります。
つまり、それぞれのチェック状態はCheckBox
、ユーザーが前のアクティビティでデータを入力したかどうかによって決まります。
私ができないことは、クリック/タッチ/選択からCheckBoxテキストを取得することですCheckBox
以下のコード スニペットが機能しないのはなぜですか? clickedError
このコードを実行した後は空です。
@Override
public void onClick(final View v)
{
CheckBox cb = (CheckBox) v.findViewById(R.id.chkSelected);
clickedError = cb.getText().toString() ;
と
@Override
public void onClick(final View v)
{
CheckBox cb = (CheckBox) v;
clickedError = cb.getText().toString() ;
}
すでに試されている
@Override
public View getView(int position, View convertView, ViewGroup parent)
{
......
holder.chk.setOnClickListener(new MyClickListener(holder.chk));
......
}
private class MyClickListener implements OnClickListener
{
CheckBox checkbox = null;
public MyClickListener(CheckBox cb)
{
checkbox = cb;
}
@Override
public void onClick(final View v)
{
// CheckBox cb = new CheckBox(mContext);
// cb = (CheckBox) v;
// clickedError = cb.getText().toString() ;
CheckBox cb = (CheckBox) v.findViewById(R.id.chkSelected);
clickedError = cb.getText().toString() ;
ありがとう。