在我的應用程序中,我有一個列表活動,並且可以在列表中檢查多個項目,下次打開列表活動時如何檢查已檢查的項目?我認爲這樣做的方式是通過使用getview,但我不知道如何在我的課程中實現,因爲我不使用自定義listadapter,如果有人可以告訴我這將是多麼偉大加載時在列表中檢查的設置項目
以下是我的代碼
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Android.App;
using Android.Content;
using Android.OS;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using System.Linq;
namespace BoostITAndroid
{
[Activity(Label = "My Activity")]
public class Selector : ListActivity
{
int[] numlist = new int[45];
String[] Options;
int[] OptionsID;
String item;
int counter = 0;
Button save, cancel;
int vehicleId;
int category;
private List<AvailableFeatures> list;
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
List<Makes> listmakes = VehicleAssetsDB.GetMakes();
Options = new String[listmakes.Count];
OptionsID = new int[listmakes.Count];
Options = listmakes.Select(Makes => Makes.Make).ToArray();
OptionsID = listmakes.Select(Makes => Makes.ID).ToArray();
ListAdapter = new ArrayAdapter<String>(this, Android.Resource.Layout.SimpleListItem1, Options);
}
}
}
下面是我onclicklistener
protected override void OnListItemClick(ListView l, View v, int position, long id)
{
l.ChoiceMode = ChoiceMode.Multiple;
Android.Util.SparseBooleanArray checkedItems = l.CheckedItemPositions;
if (!checkedItems.Get(position))
{
l.SetItemChecked(position, false);
}
if (checkedItems.Get(position))
{
l.SetItemChecked(position, true);
}
}
您需要一個自定義適配器....您可以將它們設置在GetView中,並且您可以將該信息保存在偏好設置中,或者將其序列化到文件中。或者以文本形式寫入一個由您決定的文件 – snowCrabs
我已經創建了自定義適配器,該如何實現它? –