如何实现LinearLayout.replaceView() - 或ViewGroup.replaceView()

时间:2011-05-11 13:57:04

标签: android android-layout

查看the documentation,有LinearLayout.addView(),但没有任何LinearLayout.replaceView()。

另一方面,有LinearLayout.removeView()

实现我自己的LinearLayout.replaceView()作为两个简单的连续调用来删除+添加足够安全吗?即是否有需要注意的警告?

public void replaceView(View oldView, View newView) {
   removeView(oldView);
   addView(newView);
}

1 个答案:

答案 0 :(得分:3)

试试这个:

public void replaceView(final View oldView, final View newView) {
    addView(newView, indexOfChild(oldView));
    removeView(oldView);
}