0

私はアンドロイド用のモノが初めてです。候補を選択し、ボタンを押してデータベースに挿入できる単純なチェックボックスリストを作成しようとしています。ここまでは問題ありませんが、問題はチェックした値の読み込みにあります。this.Checked = true;を明示的に入れても、チェックボックスは常にオフになっています。

ここに私のコードがあります:

リストビューを読み込んでいます:

    var CandidatesList = FindViewById<ListView>(Resource.Id.lstVotingCandidates);
    CandidatesVoteAdapter cva = new CandidatesVoteAdapter(this, MAE.Code.Utilities.CandidatesInfo.CurrentList);
    CandidatesList.ChoiceMode = ChoiceMode.Multiple;
    CandidatesList.Adapter = cva;

アダプタ:

public override View GetView(int position, View convertView, ViewGroup parent)
{
    View view = convertView; // re-use an existing view, if one is available
    if (view == null) // otherwise create a new one
    {  
       view = new Views.CandidateVoteItemView(context, items[position]);
    }
    return view;
}

意見:

class CandidateVoteItemView : CheckBox
{
    public MAE.MAEService.Candidate Candidate { get; protected set; }
    public CandidateVoteItemView(Context context, MAE.MAEService.Candidate candidate) : base(context)
    {
        this.Text = candidate.FirstName;                                 //Working 
        this.Checked = true;// (candidate.isChecked == 1) ? true : false;//Not Working
    }
}
4

1 に答える 1

0

このアプローチを試すことができます:

lv.SetItemChecked(1, true);

公式 xamarin サイトから取得し、セクション 2.2 を確認してください

于 2013-06-17T07:12:51.697 に答える