2011年5月5日

Activity中的setContentView( )分析

相信每個人都有看過setContentView(),但你可能沒有注意,這個方法有兩種版本,分別為 :
    public void setContentView (int layoutResID)
    public void setContentView (View view)

    我們在使用的時候使否注意過呢,這裡必須要注意的是layoutResID這個項目,雖然它是傳入整形的參數,但是它一定要是一個layout的資源,怎麼說呢,相信很多人都碰過,在findViewById(R.id.XX),奇怪沒有打錯啊,為什麼老是跟我說Null Value Exception,其實這時候你因該要去檢查你的setContentView(R.layout.XXX)放置的位置或是名稱了,因為findViewById它會對應你在onCreate()中所設定的layout文件,到該xml文件取出該idview,如果找不到,它會回傳一個空值,所以下再碰到Null Value Exception先去檢查你的setContentView()位置吧!!

findViewById(R.id.XX)它的說明如下 :  


 額外測試了一下這樣會發生甚麼效果

 setContentView(R.drawable.icon);




結果如下 :


至於為什麼大家自己想想吧!!
本篇就簡單的介紹到這邊囉。

沒有留言:

ShareThis