2010-07-23 31 views
0

在我的第一個中活性onCreate方法,我有:setContentView - 如果不使用R.id.會出現奇怪的行爲?

super.onCreate(savedInstanceState); 
final int splash = R.layout.splash; 
setContentView(splash); 

這會導致應用程序崩潰。但如果我使用:

super.onCreate(savedInstanceState); 
setContentView(R.layout.splash); 

一切都很好。是什麼賦予了?

我正在試驗這個的唯一原因是因爲我想根據客戶的選擇根據一組數據驅動選項加載不同的佈局,這些佈局將根據客戶的選擇來自另一個類。

回答

2

我很難相信這實際上是導致崩潰。你能提供例外嗎?

+0

我同意brandon,我在我的模擬器上測試了這個代碼,它工作得很好......所以你必須在其他地方有一個問題 – Sephy 2010-07-23 15:00:38

+0

我再次嘗試它,它的工作。第一次嘗試必須在早上過早 - 所以我認爲我使用的是類似於R.drawable.splash的錯誤類型的資源ID而不是R.id.splash。感謝您在我的一天創造健康。 :^) – 2010-07-23 17:32:41

+2

也可能您需要執行Clean以使R文件從XML重新生成。 – 2010-07-23 17:42:09

1

最有可能未粘貼的代碼的其他部分試圖訪問該內容視圖的資源之前,您已撥打setContentView()