2015-03-02 65 views
3

我有一個表格佈局(具有房地產過濾參數的表格)。當用戶從Spinner列表(公寓,房屋,土地等)中選擇房產類型時,我需要隱藏/顯示具有過濾參數的行。可能嗎? TableLayout對此有好處,或者使用LinearLayout會更好嗎?在LinearLayout上使用TableLayout更好嗎? 我有水平的形式簡單的表看起來像這樣:Android:隱藏/顯示錶格行

------------------------- 
field name: [input field] 
------------------------- 
field name: [input field] 
------------------------- 

我已經發現,我可以刪除/添加行:

tableLayout.addView(row); 
tableLayout.removeView(row); 

是它去的地方只有一個辦法?我可以隱藏/顯示行而不刪除它們嗎?

+0

我做的確切的事情,你問在一個應用程序。假設TableRow有一個id,併爲其分配了一個變量(findViewById()),那麼 .setVisibility(View.GONE)或(View.VISIBLE)將會執行該操作。沒有重新定位。 – 2015-03-02 14:57:00

+0

@DavidM - 我只是試過了,是的,我現在可以隱藏行,但行之間存在差距。不可見的行不崩潰,他們留下空白的差距。我該如何解決這個問題? – oyatek 2015-03-02 15:02:04

+0

@DavidM如果你有一個答案,請發表回答(不是評論),所以我可以接受它 – oyatek 2015-03-02 15:03:02

回答

3

您可以使用<variable>.setVisible(View.GONE)<variable>.setVisible(View.VISIBLE)來隱藏和顯示tableRow變量。將不需要重新定位行(s)。

祝你好運!

+0

再次感謝,祝你有美好的一天 – oyatek 2015-03-02 15:15:13