您好,登錄后才能下訂單哦!
本篇內容介紹了“Android自定義LinearLayout布局顯示不完整怎么解決”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
發現問題
原需求,在一個伸縮列表中,自定義LinearLayout繼承LinearLayout動態添加布局。
然而實現的時候:一共遍歷了30條數據,卻只顯示了一條
斷點查看代碼:遍歷addView()
這個過程是正常的30次循環。那是布局的問題?
感覺沒毛病。。。試著在自定義布局外層再加一層LinearLayout垂直方向,wrap_content和match_parent?都試了依舊無效
Android - 自定義View不顯示
說明:
自定義了一個LinearLayout,顯示不出來
原因是必須有
public ManDaoH5View(Context context, AttributeSet attrs) {
這個方法是自定義LinearLayout初始化調用的方法,LinearLayout自己的屬性也必須寫再這個方法里面否則屬性也會不起作用,例如:setOrientation(VERTICAL);
代碼:
public class ManDaoH5View extends LinearLayout { public ManDaoH5View(Context context, AttributeSet attrs) {//這個方法必須有,否則自定義的LinearLayout不會顯示 super(context, attrs); setOrientation(VERTICAL);//水平排布(自身布局屬性必須寫在這里,寫在別的地方會不起作用) //initChild(context, url);//這一行不要加,別的地方引用這個布局,就會運行這個方法,此時webview還沒有連接,會出錯 } }
解決方案兩種!
一:布局文件中添加。。。自定義的LinearLayout也是Liearlayout呀,怎么能把它的方向忘了呢?
二:在構造方法中添加:
如果你是直接new這個自定義View就在一個參數的構造方法添加;如果你是在xml中引用這個自定義view便在兩個參數的構造方法中引用;三參數的構造方法忘記是什么情況調用了(o(╯□╰)o)
setOrientation(VERTICAL);
“Android自定義LinearLayout布局顯示不完整怎么解決”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。