Android Studio Beta (0.8) имеет отличную новую функцию, где он проверяет, что некоторые параметры int
не являются произвольными целыми числами, а имеют некоторые свойства.
Например, вызывая что-то вроде:
setContentView(R.id.textView1);
будет правильно сообщать, что R.id.textView1
не является идентификатором макета (сообщение является "ожидаемым ресурсом макета типа" ). Есть и другие случаи, когда это переполнено.
Понятно, что эта защита теряется, как только вы добавляете свои собственные методы в микс, например.
private void mySetContentView(int resourceId) {
setContentView(resourceId);
}
Затем я могу вызвать mySetContentView()
с любым произвольным целым числом, и он не будет жаловаться.
Итак, у меня есть два (связанных) вопроса:
- Как это достигается - специальные проверки, "запеченные" в линт?
- Есть ли способ аннотировать метод
mySetContentView()
, чтобы он также сообщал об ошибке типа ресурса при вызове с недопустимым значением?