2013-03-23 46 views
1

我想知道是否可以在特定的@ViewById之后和其他人之前执行方法@ViewById。AndroidAnnotations-直接在特定的@ViewById之后执行方法@ViewById

@ViewById 
CostumView view1; 

@ViewById 
ListView list; 

void myMethod(){ 
    view1.set... 
} 

我也想知道我怎么能强迫第一次注射是第一。

谢谢。

没有AA的代码 主要和风扇布局必须仅由java设置。

private FanView fan; 
    private ListView list; 
     @Override 
     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.test); 
      fan = (FanView) findViewById(R.id.fan_view); 
      fan.setViews(R.layout.main, R.layout.fan); 
      list=(ListView)findViewById(R.id.list); 

如果列表在主或风扇布局MyActivity_的findViewById返回null :)

(如果我使用@AfterViews)所生成的代码不会停那样:

   setContentView(R.layout.test); 
       fan = (FanView) findViewById(R.id.fan_view); 
       list=(ListView)findViewById(R.id.list);//returns null 
       fan.setViews(R.layout.main, R.layout.fan); 
+0

你为什么要特别注射后调用的方法?检查“@ AfterViews”是否足够。 – Michal 2013-03-23 22:38:08

+0

更新,@AfterViews是不够的这种情况下 – Simo 2013-03-23 23:17:54

回答

0

由于官方文件规定尽快注射,因此没有注释允许在注射视图之间执行指令 。

他们应该做的注释

@afterView(R.id.myView) 
相关问题