我是新手,目前正在學習java。 在我的MainActivity
上打開Fragment
後,我想更改Fragment
中的視圖。 我注意到我不能像在我的MainActivity
中那樣自由選擇使用findViewById(R.id.viewNameInXml)
。搜索了一會兒後,我找到了解決方案,以獲得參考查看: 我不得不把Fragment
的onCreate()
方法更改爲以下:Android:片段:爲什麼我只能在onCreateView方法中獲得對視圖的引用?
View inf = inflater.inflate(R.layout.fragment_name, container, false);
TextView tv = (TextView)
inf.findViewById(R.id.textViewIdXml);
zv.setText("new text");
return inf;
我的問題是:我爲什麼只能訪問TextView
這樣?請記住,我是初學者,所以儘量保持簡單求你
謝謝你的回答。現在我明白了爲什麼我不能僅僅調用findViewById。我會在這兩種方法之外的片段中調用「this.getView()」嗎? –
@ Fr4nkWh1te是的,你甚至不需要'this.'。也就是說,通常使用兩種生命週期方法之一來存儲對您計劃稍後操作的視圖的引用,所以這就是我的建議。 – Karakuri