ViewChangeEvents

Csaba Kozák edited this page Mar 16, 2016 · 4 revisions

Since AndroidAnnotations 3.0

@FocusChange

This annotation is intended to be used on methods to receive events defined by android.view.View.OnFocusChangeListener.onFocusChange(View view, boolean hasFocus) when the focus state of a view has changed. The annotation value should be one or several R.id.* fields that refers to a subclass of View. If not set, the method name will be used as the R.id.* field name. The method may have multiple parameters:

  • A android.view.View parameter to know which view has targeted this event.
  • An boolean parameter to know if the view gain or lost the focus.

Some usage examples of @FocusChange annotation:

@FocusChange(R.id.helloTextView)
void focusChangedOnHelloTextView(View hello, boolean hasFocus) {
	// Something Here
}

@FocusChange
void helloTextViewFocusChanged(View hello) {
	// Something Here
}

@FocusChange({R.id.editText, R.id.helloTextView})
void focusChangedOnSomeTextViews(View hello, boolean hasFocus) {
	// Something Here
}

@FocusChange(R.id.helloTextView)
void focusChangedOnHelloTextView() {
	// Something Here
}

Since AndroidAnnotations 4.0.0

As of AndroidAnnotations 4.0.0 any subclass of View can be passed to the methods (eg. EditText).

@CheckedChange

This annotation is intended to be used on methods to receive events defined by android.widget.CompoundButton.OnCheckedChangeListener.onCheckedChanged(CompoundButton buttonView, boolean isChecked) when the check state of a compound button has changed. The annotation value should be one or several R.id.* fields that refers to a subclass of View. If not set, the method name will be used as the R.id.* field name. The method may have multiple parameters:

  • A android.widget.CompoundButton parameter to know which compound button has targeted this event.
  • An boolean parameter to know if the view is checked.

Some usage examples of @CheckedChange annotation:

@CheckedChange(R.id.helloCheckBox)
void checkedChangeOnHelloCheckBox(CompoundButton hello, boolean isChecked) {
	// Something Here
}

@CheckedChange
void helloCheckBoxCheckedChanged(CompoundButton hello) {
	// Something Here
}

@CheckedChange({R.id.aCheckBox, R.id.helloCheckBox})
void checkedChangedOnSomeCheckBoxs(CompoundButton hello, boolean isChecked) {
	// Something Here
}

@CheckedChange(R.id.helloCheckBox)
void checkedChangedOnHelloCheckBox() {
	// Something Here
}

Since AndroidAnnotations 4.0.0

As of AndroidAnnotations 4.0.0 any subclass of CompoundButton can be passed to the methods (eg. CheckBox).

14/10/2018 The 4.5.1 release is out !

Using AndroidAnnotations

Questions?

Enjoying AndroidAnnotations

Improving AndroidAnnotations

Extending AndroidAnnotations

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.