1
我已經查看了大約12個SO帖子,並閱讀了關於活動和片段的文檔。動態地將視圖添加到片段之外OnCreateView調用
我有什麼我認爲是一個令人難以置信的常見問題,但也許我失去了一些基本的東西。
我有一個片段。這個片段是從Java而不是從XML創建它的視圖。在運行期間,我想向它添加一個圖像。我試着將視圖添加到viewgroupd中,創建一個LinearLayout並將其添加到視圖中,還有一些其他的東西,但都沒有工作。我經常崩潰(沒有錯誤日誌:?()
這是我最好的嘗試代碼:
iImage image = new iImage(getActivity());
image.setImageResource(R.drawable.image);
LinearLayout.LayoutParams imageParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
image.setLayoutParams(imageParams);
((ViewGroup)getFragmentManager().findFragmentById(resourceId).getView()).addView(image);
如果你可以告訴我怎麼可以再補充一個觀點的片段,我將不勝感謝它!
但是我不能動態訪問它嗎?我爲什麼要存儲它?我需要以這種方式誇大觀點嗎? – Aggressor
你不需要膨脹onCreateView中的視圖... onCreateView只是一個被activity調用的方法來告訴你的片段準備它的初始佈局。你只需要返回一個視圖。在那裏你可以創建一個虛擬的視圖組並保存對它的引用供以後使用,然後你可以動態地爲它添加視圖。但是由於大多數人使用XML來佈局他們的佈局,谷歌很友善地向我們提供了一個inflater –
好吧,我認爲我們正在到達某個地方。唯一的看法是抽象。我無法將視圖添加到視圖。它需要是一些東西?我試圖將它視爲ViewGroup,但它不起作用。 – Aggressor