簡體   English   中英

如何交換兩個 LinearLayout

[英]How to swap two LinearLayout

我有一個父線性布局,其中有兩個線性布局和一個按鈕。父線性布局內的每個線性布局都有兩個項目。 項目包括編輯文本和微調器。我想要的是在單擊按鈕時交換這兩個 LinearLayout。所以我的問題是如何以編程方式執行此操作? 我是 Android 開發的新手,所以請幫我解決這個問題。

在最外面的 LinearLayout 上,嘗試調用 removeViewAt(0)。 這應該刪除第一個 LinearLayout。 然后調用 addView() 將第一個 LinearLayout 傳遞給它。

一種簡單的方法是只制作兩個布局。 設計為當您准備使用另一個布局時,切換布局,然后將其設置為當前視圖。

或者,如果您想喜歡它,您可以使用各種動畫類來實現。 如果您想要獲得確切的視覺效果,也許可以提供更多關於您想要的內容。

正如卡里姆提到的,你可以使用 setVisibilty() 到 View.GONE 和到 View.VISIBLE。 但是為了順利交換,您將需要了解Translate Animation

這是如何交換兩個視圖(例如兩個 LinearLayouts)的工作示例:

ViewGroup root = findViewById(R.id.my_root);
// assumption: root has 2 child views only 
// swap left and right (or top and bottom)
View leftView = root.getChildAt(0);
root.removeViewAt(0);
root.addView(leftView);
// now the two child views of root are swapped

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM