2017-01-24 34 views
0

我使用ViewStubs以编程方式创建一些视图,如下所示。Android在充气后查找视图

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而不是膨胀的视图?我试过,但它给了我一个null pointer exception。我需要或allCommissionsContainer.findViewWithTag("MyTag")

回答

0

一些测试后,我意识到,我可以用

RelativeLayout myRelativeLayout = (RelativeLayout) viewStubCommission.inflate(); 

,然后设置一个标签或标识

myRelativeLayout.setTag("MyTag");