2014-10-17 53 views
0

当我在ListView中添加一个新项目时,它正在丢失存在的值。它只显示已添加的新值。我们的目标是不失现有ones.My代码添加一个新的值:当我在Listview中添加一个新项目时,以前的值将被删除

List<string> list = new List<string>(); 
void btnAddItem_Click(object sender, EventArgs e) 
{ 
    ArrayAdapter<string> adapter; 

    string edttxNewItem = FindViewById<EditText>(Resource.Id.newItem).Text; 

    ListView listItems = FindViewById<ListView>(Resource.Id.ListOfItems); 

    list.Add(edttxNewItem); 

    adapter = new ArrayAdapter<string>(this, Android.Resource.Layout.SimpleListItem1, list); 

    listItems.Adapter = adapter; 

    listItems.DeferNotifyDataSetChanged(); 

} 

回答

0

我对xamarin不熟悉,但似乎您尝试每次都在btnAddItem_Click上创建listview实例。

所以在oncreate方法初始化listItems作为

listItems = FindViewById<ListView>(Resource.Id.ListOfItems); 

并定义listItems作为类变量。

并且还设置adapter以外的btnAddItem_Click,比方说OnCreate方法。

adapter = new ArrayAdapter<string>(this, Android.Resource.Layout.SimpleListItem1, list); 

btnAddItem_Click只是listItems添加edttxNewItemnotifydatasetchanged相当于xamarin

0

每当你点击该按钮你实例化一个新的ArrayList(名单列表=新名单())。因此,数组中的每个以前的值都被删除

+0

我删除,但之前的值被删除。该列表视图在开始应用程序中填充。 – 2014-10-17 16:50:24

相关问题