如何通过加减按钮实现动态EditText?
我想通过两个按钮来实现这种效果。 App运行的时候,屏幕只出现一个EditText。 然后点加号按钮,下面就出现一个新的EditText(带有减号在旁边)。 点击减号就删除。
还有一个问题就是这种效果是不是通过Listview实现?
跪求大神们的高见和指点!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果需要滑动就用
RecyclerView
,点击新增的时候往adapter里面插入数据然后更新更新视图如果数量不会很多,直接用
LinearLayout
,然后点击时动态添加子View,然后重绘LinearLayout
就行了这种效果有2个主要部件, 第一个是外层的容器(后面叫父视图)用来放置具体的子视图, 可以用一个竖直的
LinearLayout
. 第二个就是你要动态添加的子视图, 这个子视图应该包含一个EditText
和一个Button
. 我假设你知道怎样创建子视图了操作就是点击新增的按钮就在父视图中使用
ViewGroup.addView()
方法增加一个子视图, 也就是你说的"EditText", 然后如果父视图的大小没有发生变化的话, 就调用父视图的invalidate()
方法重绘父视图, 那么你刚才add进去的子视图就会显示出来了, 也就新增成功了. 如果父视图的大小发生了变化, 就调用requestLayout()
. 删除操作一样, 就是点击删除按钮的时候就用ViewGroup.removeView()
删除对应的子视图, 然后再invalidate()
/requestLayout()
activity的布局
R.layout.edt
文件, 子控件的布局activity的关键代码
关键代码如上
container就是上面说的父控件, 是一个
LinearLayout
R.layout.edt
就是上面说的子控件的布局, 其中的按钮就是R.id.btn
请问关键代码中第五行的this被标错,提示方法不能应用于该activity,还有@Override也被标错,说onClick方法不在覆盖范围内,这些应该怎么解决……