У меня есть приложение, и в одном из моих действий я создал базовую активность, которая содержит некоторые вспомогательные методы, которые могут использовать производные классы.Попытка ленивой загрузки андроида с использованием генераторов
У меня есть метод, что взгляды ленивые нагрузки, вот код
protected <T extends View> void loadView(T view, int id) {
if(view == null){
view = (T)findViewById(id);
}
В моем производном классе я называю ее как таковой.
private Button btnAddAlarm
...
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.timer_list);
loadView(btnDeleteAlarm, R.id.btnDeleteAlarm); //the view in the helper method loaded fine
btnDeleteAlarm.setEnabled(false); //Null pointer exception!
проблема заключается в том, что btnDeleteAlarm является недействительным после того, как он выходит из функции, даже если ссылка передается в.
Я не касался Java в то время, но если я помню основы этого не должен Происходит при передаче ссылок.
Я вижу сейчас, я неправильно понял изображение, которое у меня было в моей голове для копирования ссылок на аргументы. – indigo0086