[英]Android find a view after it is inflated
我正在使用ViewStubs
以編程方式創建一些視圖,如下所示。
RelativeLayout allCommissionsContainer = (RelativeLayout) mBaseLayout.findViewById(R.id.allCommissionsContainer);
ViewStub viewStubCommission = new ViewStub(mActivity);
viewStubCommission.setLayoutResource(R.layout.viewstub_commission_container);
allCommissionsContainer.addView(viewStubCommission);
viewStubCommission.inflate();
但是,如何在以后的代碼中找到膨脹的視圖( RelativeLayout
)? 如果我使用viewStubCommission.setTag("MyTag");
不會將其應用到實際的ViewStub
而不是膨脹的View嗎? 我試過了,但它給了我一個null pointer exception
。
我需要類似allCommissionsContainer.findViewById(R.id.someId)
或allCommissionsContainer.findViewWithTag("MyTag")
。
經過一些測試,我意識到我可以使用
RelativeLayout myRelativeLayout = (RelativeLayout) viewStubCommission.inflate();
然后設置標簽或ID
myRelativeLayout.setTag("MyTag");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.