ウィジェットからすべての子ビューを削除するにはどうすればよいですか?例えば、私はGridViewを持っており、他の多くのLinearLayoutsを動的に膨張させます。私のアプリケーションの後半で、GridViewで新しく始めて、すべての子ビューをクリアしたいと考えています。どうすればいい? TIA。ビューからすべての子ビューを削除する
74
A
答えて
143
viewGroup.removeAllViews()
はどのviewGroupでも機能します。あなたの場合はGridViewです。
http://developer.android.com/reference/android/view/ViewGroup.html#removeAllViews()
11
あなたはこの機能をのViewGroupにビューの唯一のいくつかのタイプを削除することができます
private void clearImageView(ViewGroup v) {
boolean doBreak = false;
while (!doBreak) {
int childCount = v.getChildCount();
int i;
for(i=0; i<childCount; i++) {
View currentChild = v.getChildAt(i);
// Change ImageView with your desired type view
if (currentChild instanceof ImageView) {
v.removeView(currentChild);
break;
}
}
if (i == childCount) {
doBreak = true;
}
}
}
+0
OPが異なるタイプの子ビューを削除する方法を尋ねなかったため、投票結果が下がった。 OPはすべての子ビューを削除したかった。 – protectedmember
0
void removeAllChildViews(ViewGroup viewGroup) {
for (int i = 0; i < viewGroup.getChildCount(); i++) {
View child = viewGroup.getChildAt(i);
if (child instanceof ViewGroup) {
if (child instanceof AdapterView) {
viewGroup.removeView(child);
return;
}
removeAllChildViews(((ViewGroup) child));
} else {
viewGroup.removeView(child);
}
}
}
0
は、このコードは、のために働いているこの
RelativeLayout relativeLayout = findViewById(R.id.realtive_layout_root);
relativeLayout.removeAllViews();
をお試しください私。
関連する問題
- 1. ビューからすべてのリスナーを削除します。
- 2. 認証後にすべてのビューからビューが削除されない
- 3. TabBarControllerからビューを削除する
- 4. ビューからボタンを削除する
- 5. リストビューからビュー/値を削除する
- 6. ビューからuiimageviewを削除する
- 7. ビューからUIViewを削除する
- 8. サーバー上のすべてのデータベースからビューを削除するには
- 9. スーパービューからビューを削除すると、すべてのアニメーションが削除されますか?
- 10. すべての静的分割ペインを削除する(1x1ビュー)
- 11. マルチビューを追加してビューを削除し、削除後にビューからすべてのデータを取得するにはどうすればよいですか?
- 12. ビューを削除して別のビューを追加する
- 13. ビューコントローラから一部のビューを削除
- 14. すべてのテーブルビューセルから進行状況ビューを削除します
- 15. アンドロイドは、ビュー内のすべてのボタンを削除します
- 16. 親ビューからの画像の削除
- 17. ScrollViewからのビューの削除
- 18. スーパービューからのビューの削除
- 19. スーパービューからのビューの削除iOS
- 20. 親ビューからWebビューを削除すると、iOS 10でアプリケーションがクラッシュする
- 21. DataGridビューからレコードを削除
- 22. MVC削除ビューを使用してレコードを削除する
- 23. xamarin andriod ExpandableListView:グループから子ビューを削除または非表示にする
- 24. スーパービューからビューを削除するには十分ですか?
- 25. スーパービューからビューを削除するとエラーが発生する
- 26. ビューから子テーブルへのビュー
- 27. drupalのビューからノードを削除する方法6
- 28. 別の方法からビューを削除する方法
- 29. アンドロイドのビューからリスナーを削除する
- 30. 私たちのビューからAVPlayerViewControllerを削除するには?
ありがとうございました! –
実際、removeAllViews()はGridViewで呼び出されたときに例外をスローします。ドキュメントから: "このメソッドはサポートされておらず、呼び出されるとUnsupportedOperationExceptionをスローします。" – Moritz
このコメントは、ViewGroupが派生した抽象基本クラスに適用されます。 ViewGroup自体とその派生クラスはすべてremoveAllViewsをサポートします。 –