Android Annotations @AfterViews调用了3次

时间:2013-02-27 15:28:43

标签: android android-annotations

我正在使用Android Annotations,我用@AfterViews注释的方法被调用3次。我调试了生成的类,我认为调用了这3个方法,但我不知道为什么。

@Override
public void setContentView(int layoutResID) {
    super.setContentView(layoutResID);
    afterSetContentView_();
}

@Override
public void setContentView(View view, LayoutParams params) {
    super.setContentView(view, params);
    afterSetContentView_();
}

@Override
public void setContentView(View view) {
    super.setContentView(view);
    afterSetContentView_();
}

- 编辑1 - 我的活动声明是我设置布局的唯一地方:

@EActivity(R.layout.real_estate_customer_leads_list)
public class RealEstateCustomerLeadsListActivity extends
    SlidingFragmentActivity implements FilterResponseHandler {

}

1 个答案:

答案 0 :(得分:0)

这可能是因为一个超级正在呼叫另一个。像这样:

 // super.setContentView(layoutResID); code is:
 View v = LayoutInflater.from(getContext()).inflate(layoutResId);
 setContentView(v);

// then super.setContentView(view); code is:
setContentView(view, null);

// then super.setContentView(view, params);
this one now actually do real work. Hence, 3 calls!