【问题标题】:Adding and deleting edittext in a android listview在android listview中添加和删除edittext
【发布时间】:2012-10-11 06:00:08
【问题描述】:

我需要使用添加行按钮在 android listview 中添加任意数量的编辑文本和删除按钮(考虑具有编辑文本和按钮的行(名称删除行)),我们可以添加任意数量的行也能够删除任意数量的列,当我们添加新行时,具有已输入值的旧编辑文本需要在那里并且也可以读取整个编辑文本值。当按下行中的删除按钮时删除行。新输入的行必须位于顶部。寻找您的宝贵意见,谢谢。

【问题讨论】:

  • 我猜你想要的是从编辑文本中在你的行上添加一些东西,并在你点击删除按钮时清除该字段。如果我错了。纠正它

标签: android listview android-edittext


【解决方案1】:

你的问题对我来说有点不清楚。此外,我不在我的开发机器附近,因此您可以遵循这些准则。 (你可能需要改变一些东西)

添加编辑文本

EditText et = new EditText(...);
yourView.addView(et);

由于您希望新的 EditText 位于顶部,因此您需要以编程方式设置对齐方式:

RelativeLayout.Layoutparams params = (RelativeLayout.LayoutParams)et.getLayoutParams();
params.addRule(RelativeLayout.ALIGN_PARENT_TOP);
// OR do this:
params.addRule(RelativeLayout.ABOVE, R.id.edit_text_will_be_above_this);    
et.setLayoutParams(params);
// And then add the view
yourView.addView(et);

最后,删除它:

et.setVisibility(View.GONE);

【讨论】:

    【解决方案2】:

    我对这个问题的理解:

    1. 您需要在单击按钮时添加一个新行,新行应该是第一个显示的行。新行将具有一些默认值。
    2. 每一行都有一个名为remove的按钮,点击后需要删除该行。

    如果我是正确的,这里是答案(假设你知道how to assign eventhandler to buttons):

    1. 我建议使用 ArrayList 来获取适配器,然后填充它。在添加行时,使用add 在要插入新行的开始处插入数据,然后获取适配器并填充列表视图。将列表视图设为实例变量。

    2. 您可能需要查看a previous sof question on assigning eventhandlers to views inside a rowthis sof question on same topic 来参与活动。要删除,请使用带有所选行索引的arraylist 的remove 方法。移除元素,形成新的适配器并填充列表视图。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-06
      • 2015-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-12
      • 2013-07-05
      • 2014-07-27
      相关资源
      最近更新 更多