0
我已創建自定義列表視圖。我想添加項目到我的列表視圖從MainActivity中的第二個活動,即使我的活動沒有打開。當我的Mainactivity(帶有列表視圖)也將打開時,向我展示我添加的內容。將項目添加到列表視圖到另一個活動
這是我的第一類代碼:
class TableItemsClass
{
public string Description { get; set; }
public string Quantity { get; set; }
public string ItemPrice { get; set; }
public string TotalPrice { get; set; }
}
我的第二類
class MyListViewAdapter : BaseAdapter<TableItemsClass>
{
public List<TableItemsClass> mitems;
private Context mContext;
public MyListViewAdapter(Context context, List<TableItemsClass> items)
{
mitems = items;
mContext = context;
}
public override int Count
{
get
{
return mitems.Count;
}
}
public override long GetItemId(int position)
{
return position;
}
public override TableItemsClass this[int position]
{
get
{
return mitems[position];
}
}
public override View GetView(int position, View convertView, ViewGroup parent)
{
View row = convertView;
if (row == null)
{
row = LayoutInflater.From(mContext).Inflate(Resource.Layout.TableItems, null, false);
}
TextView txtDescription = row.FindViewById<TextView>(Resource.Id.txtDescription);
txtDescription.Text = mitems[position].Description;
TextView txtQuantity = row.FindViewById<TextView>(Resource.Id.txtQuantity);
txtQuantity.Text = mitems[position].Quantity;
TextView txtItemPrice = row.FindViewById<TextView>(Resource.Id.txtItemPrice);
txtItemPrice.Text = mitems[position].ItemPrice;
TextView txtTotalPrice = row.FindViewById<TextView>(Resource.Id.txtTotalPrice);
txtTotalPrice.Text = mitems[position].TotalPrice;
return row;
}
}
}
所以我用這樣的代碼在第二個活動增加一個額外的項目,我的主要Activity.But列表視圖,但不幸的是,它不添加任何東西。
private List<TableItemsClass> mItems;
private ListView mlistview;
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.TableItemsMain);
mlistview = FindViewById<ListView>(Resource.Id.listView1);
mItems = new List<TableItemsClass>();
mItems.Add(new TableItemsClass() { Description = "test", Quantity = "3", ItemPrice = "2.00", TotalPrice = "6.00" });
MyListViewAdapter adapter = new MyListViewAdapter(this, mItems);
mlistview.Adapter = adapter;
有幾種解決方案。告訴我更多關於您的情況,然後我會提出一個完整的代碼解決方案 1.將數據從活動傳遞到帶有Intent的ListView活動 2.在第二個活動中保存數據(在文件中,SharedPref,sqlite)並重新加載listview 3。保存數據(在靜態變量)在第二個活動,並重新加載列表視圖 –
我最好的想法是,如果我可以從意見添加列表視圖的意圖。並且,當打開我的MainActivity以向我顯示所有項目時,我已添加了意圖。謝謝 – Dim
,請使用此intent.putExtra(「key」,String [] items); –