不要求视图具有唯一ID。您可以膨胀视图,然后将该视图添加到另一个视图中。例如。
myFooterReference = inflate (my_footer)
myListView.addFooterView(myFooterReference)
那么呼叫总是有效吗?
myListView.removeFooterView(myFooterReference)
我们现在没有选择先检查
myListView.findViewById(R.id.my_footer_id) // because no such footer exists
所以这些家伙怎么了?尝试通过引用删除视图是否始终有效,即使它不在那里。有没有其他人做过这样的错误?
任何有关android sdk没有方法的理论:
myListView.hasView(listViewReference);
或至少
myListView.hasFooterView(listViewReference) ?
它有一些项目,但为什么不知道一个给定的页脚是否在那里?
答案 0 :(得分:1)
您可以获得视图的父级:
view.getParent();
并检查它是否有父级,是否是您的列表视图的父级或不是?
但是如果你不喜欢这些检查,通常最好的解决方案就是实现你自己的布局管理器,根据需要做你想要的布局,并且还可以跟踪它里面的有趣视图。 /> 请参阅此页:Check if a View contains another View。