FragmentArg - WonderCsabo/androidannotations GitHub Wiki
Since AndroidAnnotations 2.7
@FragmentArg
The @FragmentArg
annotation indicates that a fragment field should be injected with the corresponding Fragment Argument.
The setter method in the generated builder will always have the same name as the argument. By default, the key used to bind the value is the field name, but you can change it by providing a value to the @FragmentArg
annotation.
Usage example:
@EFragment
public class MyFragment extends Fragment {
@FragmentArg("myStringArgument")
String myMessage;
@FragmentArg
String anotherStringArgument;
@FragmentArg("myDateExtra")
Date myDateArgumentWithDefaultValue = new Date();
}
Method based injection
Since AndroidAnnotations 4.0.0
@EFragment
public class MyFragment extends Fragment {
@FragmentArg("myStringArgument")
void setOneFragmentArg(String myMessage){
// do something with myMessage
}
void setMultipleFragmentArgs(@FragmentArg String anotherStringArgument, @FragmentArg("myDateExtra") Date myDateArgument){
// do something with anotherStringArgument and myDateArgument
}
}
The fragment builder will hold dedicated methods for these arguments:
MyFragment myFragment = MyFragment_.builder()
.myMessage("Hello")
.anotherStringArgument("World")
.build();