Intereting Posts
Action Bar Шерлок 4 цвет текста заголовка – где я иду не так? Как получить доступ к setPreferredNetworkType в Android-источнике Модернизация продолжает сглаживать мои файлы cookie :( Android Конфигурация Proguard для facebook sdk. Разделите все, кроме аналитики Как наложить изображение или изображение поверх снимка, снятого камерой Почему имена файлов в выделенной папке не могут содержать специальные символы или начинаться с заглавной буквы? Ошибка: атрибут «тема» уже определен Есть ли карта Android PCI? Как привязать данные к onTextChanged для EditText на Android? Android ViewPager и TabLayout работают не быстро Карта Просмотр направлений рисования с использованием google Directions API – декодирование полилиний Кнопка перехвата назад с мягкой клавиатуры Как изменить размер AlertDialog на дисплее клавиатуры Android EditText Multiline с SoftInputMode adjustPan Как настроить значок стрелки, значок страницы и заголовок страницы в MasterDetailPage – Xamarin.Forms

NullPointerException на findViewById () в android

В следующем коде я получаю исключение NullPointerException в строках 9/10 с помощью findViewById ().
В моем основном классе я просто создал объект из этого класса, чтобы использовать .getFrom ()

public class UserInteraction extends Activity { EditText etFrom; int from; EditText etTill; int till; public UserInteraction(){ etFrom = (EditText)findViewById(R.id.et_from); etTill = (EditText)findViewById(R.id.et_till); } public int getFrom() { String s = etFrom.getText().toString(); int i = Integer.parseInt(s); return i; } public int getTill() { String s = etTill.getText().toString(); int i = Integer.parseInt(s); return i; } 

Это то, что contentView установлен в моем основном классе ..? Что может быть причиной ?

Solutions Collecting From Web of "NullPointerException на findViewById () в android"

Метод setContentView следует вызывать с соответствующим макетом перед вызовом findViewById . Обычно он вызывается в onCreate(Bundle savedInstance) .

Вы должны вызвать его из метода onCreate из вашей деятельности, поскольку ресурсы не будут доступны до этого момента.

Поэтому, расширяя ответ MByD, в методе onCreate, сначала вызовите setContentView (), затем findViewById ().

Во-первых, вы должны вызвать setContentView (макет int) , чтобы установить Контент вашей деятельности, а затем вы можете получить свои представления (findViewById (int id));

Итак, ваша деятельность будет такой:

 public class UserInteraction extends Activity { EditText etFrom; int from; EditText etTill; int till; public void onCreate(Bundle savedInstance{ super.onCreate(saveInstance); this.setContentView(R.layout.main); etFrom = (EditText)findViewById(R.id.et_from); etTill = (EditText)findViewById(R.id.et_till); } 

}