看板 AndroidDev 關於我們 聯絡資訊
※ 引述《KeySabre (KeySabreur)》之銘言: : 不知是否能夠利用 ViewGroup.OnHierarchyChangeListener : 裡面有 onChildViewAdded(View parent, View child) : 在這裡頭對child設height : 如果不能 : 那就在這裡頭計算被add的次數 : >=7,判斷為ListView裡頭的view都已經layout,然後再... : (是不是7可能要試一下,因為我記得getView跑的次數比child數多) : 實際上 : 我只用過這招幫每個child view加上onTouchListener,沒試過更多了 這個問題在上次發問之後花了段時間 終於搞懂ANDROID中的view是怎麼設計的了 如果是已經放在頁面上的VIEW 可以用LayoutParams lp = view.getLayoutParams(); 取得設定 再用lp.height = 3; 之類的方式去設定他的高 再用view.setLayoutParams(lp);設定回去 但是,如果這個view還沒加到任何view下面的話 是不會有LayoutParams的 所以只能自己new一個給他..... XXXXX.LayoutParams lp = new XXXXX.LayoutParams(); 重點在這邊,這邊的LayoutParams,用的必需是parent的LayoutParams 如果打算把這個view放到ListView下,就必須用ListView.LayoutParams 如果打算放到LinearLayout下,就得使用LinearLayout.LayoutParams -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.233.155.148