我知道这个问题已经遍布整个地方,但即使经过所有帖子并试图理解,我也无法解决这个问题。我在Android中开发应用程序非常新,所以我肯定需要很多帮助。无论如何,我发现一些在线编码基本上创建了一个列表视图(我想要的布局方式),你可以添加项目到列表视图。这是代码 -
ListView lv;
ArrayList<HashMap<String,String>> feedList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_check_out);
lv = (ListView) findViewById(R.id.CheckList);
feedList= new ArrayList<HashMap<String, String>>();
HashMap<String, String> map = new HashMap<String, String>();
map.put("item", "Item");
map.put("qty", "Qty");
map.put("tax", "Tax");
map.put("total", "Total");
feedList.add(map);
SimpleAdapter simpleAdapter = new SimpleAdapter(this, feedList, R.layout.list_view_customs, new String[]{"item", "qty", "tax", "total"}, new int[]{R.id.textViewItem, R.id.textViewQty, R.id.textViewTax, R.id.textViewTotal});
lv.setAdapter(simpleAdapter);
正如您所看到的那样,通过实现哈希映射将项目添加到arraylist中,然后适配器将接收数据arraylist以创建列表视图 - 该视图由setAdapter功能设置。
所以,现在因为我想通过点击按钮填充列表视图,我认为这可能有效:
ListView lv;
Button addBanana;
ArrayList<HashMap<String,String>> feedList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_check_out);
lv = (ListView) findViewById(R.id.CheckList);
addBanana = (Button) findViewById(R.id.AddItem);
feedList= new ArrayList<HashMap<String, String>>();
HashMap<String, String> map = new HashMap<String, String>();
map.put("item", "Item");
map.put("qty", "Qty");
map.put("tax", "Tax");
map.put("total", "Total");
feedList.add(map);
SimpleAdapter simpleAdapter = new SimpleAdapter(this, feedList, R.layout.list_view_customs, new String[]{"item", "qty", "tax", "total"}, new int[]{R.id.textViewItem, R.id.textViewQty, R.id.textViewTax, R.id.textViewTotal});
lv.setAdapter(simpleAdapter);
addBanana.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
map = new HashMap<String, String>();
map.put("item", "Banana");
map.put("qty", "1");
map.put("tax", "0.13");
map.put("total", "1.13");
feedList.add(map);
simpleAdapter.notifyDataSetChanged();
}
});
}
它完美地建立起来。但是当我尝试通过单击按钮(在主要活动中)进入此活动时,屏幕变暗并说要退出..所以,我不确定这种方法有什么问题。我知道我处理适配器的方式肯定有问题......所以,任何反馈都会很好..非常感谢!
另外,如果您需要XML,请告诉我们!