Extra

来源:互联网 发布:维生素vb的作用及功能 编辑:程序博客网 时间:2024/05/19 13:27

原文地址:
https://github.com/excilys/androidannotations/wiki/Extras#executing-code-after-extras-injection

@Extra

@Extra注释一个从Activity中启动意图中获取正确值的字段,例如:

@EActivitypublic class MyActivity extends Activity {  @Extra("myStringExtra")  String myMessage;  @Extra("myDateExtra")  Date myDateExtraWithDefaultValue = new Date();}

如果你不给@Extra注释的字段值赋值,那么这个字段值将直接使用被使用这个字段名称。比如:

@EActivitypublic class MyActivity extends Activity {  // The name of the extra will be "myMessage"  @Extra  String myMessage;}

请注意,您可以使用意图构建器传递Extra的值。

MyActivity_.intent().myMessage("hello").start() ;

处理onNewIntent()

AndroidAnnotations会覆写setIntent()方法,并当你调用setIntent()方法时会根据给定的意图自动设置extra的值。
这允许你从onNewIntent()方法中通过调用setIntent()方法自动注入extra的值。

@EActivitypublic class MyActivity extends Activity {    @Extra("myStringExtra")    String myMessage;    @Override    protected void onNewIntent(Intent intent) {        setIntent(intent);    }}

在注入extras之后执行代码

如果你需要执行注入extras之后的代码,你应该使用@AfterExtras注释一些方法。

@EActivitypublic class MyClass {  @Extra  String someExtra;  @Extra  int anotherExtra;  @AfterExtras  public void doSomethingAfterExtrasInjection() {    // someExtra and anotherExtra are set to the value contained in the incoming intent    // if an intent does not contain one of the extra values the field remains unchanged  }}

警告

如果父类和子类有@AfterViews,@AfterInject或@AfterExtras名称相同的带注释的方法,生成的代码将会有BUG。查看更多细节问题# 591。
同时,当我们调用那些@AfterViews、@AfterInject、@AfterExtras注解的方法时会有一个调用顺序,但是如果@AfterView、@AfterInject、@AfterExtras 注解的方法是同名的,那就不能确保这几个方法的调用顺序了 ,请看( issue #810)。
关于这些注解的方法调用顺序,你可以看我的这篇博客译文:@AfterXXX 调用顺序。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 39周2天了还不生怎么办 孕中期体重猛长怎么办 4个半月胎位不正怎么办 41周不产生宫缩怎么办 生完孩子胎盘没有脱落怎么办 39周还是臀位怎么办 怀孕7个月胎位不正怎么办 怀孕六个多月胎位不正怎么办 怀孕七个月了胎位不正怎么办 怀孕七个月胎位不正怎么办 怀孕肚子上有妊娠纹怎么办 怀孕九个月肚子长痱子怎么办 怀孕前体重偏胖怎么办 怀孕打胰岛素血糖控制不好怎么办 孕后期憋的难受怎么办 怀孕6个月不想生怎么办 孕六个月不想要怎么办 怀孕9个月喝酒了怎么办 怀孕8个月喝醉了怎么办 怀孕6个月胃酸烧心怎么办 怀孕7个月胃酸怎么办 怀孕5个月胃酸怎么办 怀孕2个月胃酸怎么办 怀孕六个月胃酸烧心怎么办 孕六个月反胃酸怎么办 怀孕三个月胃酸吐酸水怎么办 孕六个月胃难受怎么办 孕6个月胃酸厉害怎么办 孕妇6个月胃酸怎么办 孕早期胎盘早剥怎么办 孕妇晕车怎么办最有效方法 怀孕了受凉胃疼怎么办 怀孕4个月胎位低怎么办 6个月胎位低怎么办 7个多月了胎位低怎么办 瑜伽按摩球破了怎么办 孕妇吐完胸口疼怎么办 孕25周胸口堵怎么办呢 孕期没做过产检怎么办 宝宝的泪囊堵塞怎么办 瑜伽球塞子丢了怎么办