В AndroidStudio мы могли бы просто использовать @IntegerRes
для обозначения параметра Int
, который должен быть ресурсом.
Если мы используем Int
вместо Resource
значения, он будет жаловаться динамически (пока мы кодируем, прежде чем мы скомпилируем)
Expected resource of type integer less... (⌘F1)
Ensures that resource id's passed to APIs are of the right type; for example, calling Resources.getColor(R.string.name) is wrong.
Нажмите на @IntegerRes
, чтобы увидеть код ниже.
/**
* Denotes that an integer parameter, field or method return value is expected
* to be an integer resource reference (e.g. {@code android.R.integer.config_shortAnimTime}).
*/
@Documented
@Retention(CLASS)
@Target({METHOD, PARAMETER, FIELD, LOCAL_VARIABLE})
public @interface IntegerRes {
}
Я хочу посмотреть, как эта аннотация обрабатывается динамически, чтобы я мог сделать свою аннотацию. Где я могу найти источник этого кода? (Я думал, что весь код Android с открытым исходным кодом)