NullPointerException на StartActivityForResult, Борьба с SQLite в Android, я думаю? - PullRequest
0 голосов
/ 22 января 2011

У меня есть один класс с именем Budget.java, в котором я запускаю Keypad.java.Это все работало нормально до недавнего времени, когда я добавил кучу кода в Keypad.java (добавленный код должен был обновить строку в моей базе данных SQLite нажатием кнопки, все несвязанные методы работали, пока я не попытался реализоватьэтот).Теперь, используя точки останова, я думаю, что я понял, что получаю сообщение об ошибке, как только я пытаюсь открыть операцию с клавиатурой, и у меня нет понятия, в чем может быть проблема.

Возможно, это мое недоразумениеsqlite открыть помощник?Или, может быть, потому что я использую StartActivityForResult?

Любые предложения будут очень признательны!Я могу загрузить logcat, если вы думаете, что это поможет.Я загрузил два маленьких класса в pastebin, вам может показаться, что их легче читать?

Budget.java (ищите ListItemCommonIntent)

keypad.java

1 Ответ

2 голосов
/ 22 января 2011

В вашем Keypad.java у вас есть следующее, кроме onCreate:

 EditText userAmount=(EditText)this.findViewById(R.id.cost_input);

Это не будет работать, потому что вы должны использовать setContentView для ссылки на макет, где вы хотите найти представление. И когда он инициализирует userAmount, объект еще не доступен (поэтому this имеет значение null).

Попробуйте это:

private EditText userAmount;

protected void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.keypad);
    userAmount=(EditText)findViewById(R.id.cost_input);
    MySpinner();
    Main();
}
...