Android-不在Activity类中怎么删除动态控件?

发布于 2017-02-01 10:04:44 字数 127 浏览 1408 评论 3

能不能能够通过控件ID或者tag来删除layout里面的控件?或者可以通过控件的ID或者tag来获取他们吗?因为通过layout是有removeview方法的,只要能获取到这个控件就可以删除掉了.
请问我需要怎么做才能达到目的呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

瑾兮 2017-09-30 21:19:49

findViewById(id)、findViewWithTag(tag),这2个方法都是通过ID或者tag获取view的实例,得到这个实例后用view.setVisibility(View.GONE)方法代替removeview这个方法会更好点。

晚风撩人 2017-07-27 10:06:39

不在Activity类中 我的理解是不在UI线程里进行该操作。

android限制了必须在UI线程里才能更新UI,如果在其他线程里打算更新UI的话,就需要用到Handler或者AsyncTask其中之一来实现了。

至于删除的方法,那就是
v = layout.findviewbyid(id)或者layout.findviewbytag(tag);
layout.remove(v);

晚风撩人 2017-05-06 13:51:33

我想说必然可以。。。
view=findViewById(id);
view=findViewWithTag(tag);
一些动态加的View 可能没有id,那就用tag呗,你的界面就是一个视图树,查找和删除,符合树的特性,肯定没有问题的。
至于找到对应的View 之后,我想remove(view)一下,我想应该没有问题。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文