2015-05-06 172 views
0

我試圖通過xml佈局來構建按鈕,具體取決於從服務器抓取的參數(主要是x/y座標)。我到目前爲止的最佳狀態要求我每次需要新佈局時更新應用程序,但我試圖找到更有效的方法。所以實際按鈕的數量及其位置與從數據庫中獲取的數據有關。我會如何繼續這樣做?動態按鈕佈局android

+1

你到目前爲止嘗試過什麼? (順便說一句,你通過WS返回的座標來設置UI組件的事實讓我非常震驚。) – shkschneider

+0

如果可能的佈局數量有限,則可以準備所有可能的佈局(比如choice_1.xml,choice_2.xml, ...),並動態加載它們。否則,您必須以編程方式添加按鈕。 –

+0

它只是按鈕,沒有別的?客戶是否知道佈局的任何事情?例如,如果你沒有服務器的情況,你會做一個AbsoluteLayout並將按鈕放在那裏? –

回答

1

要在運行時移動按鈕,請使用編程設置大小的空<View />;按鈕將會在它下面。 (適用於<LinearLayout ...><RelativeLayout ...>)。使用ViewTreeObserver.OnGlobalLayoutListenergetMeasuredWidth()獲取實際大小。

請注意,只需將某些按鈕/視圖隱藏即可(​​,其他兩個可能的值爲View.VISIBLEView.INVISIBLE),您可以做很多事情。如果可能的話,你應該更喜歡這種方法,因爲它可以讓你在任何情況下都有或多或少的理性佈局。