android - EditText.getText().toString() 错误

标签 android android-edittext

<分区>

我正在使用这段代码,日志显示存在终止应用程序的错误,如

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'android.text.Editable android.widget.EditText.getText()' on a null object reference
                  at com.example.amuna.project1.addWord.confirmBtnClicked(addWord.java:25)

代码是

import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class addWord extends AppCompatActivity {
EditText wordEdit, defEdit;
Button confirmButton;
@Override
public void onCreate(Bundle savedInstanceState) {
    wordEdit=(EditText)findViewById(R.id.wordAdd);
    defEdit=(EditText)findViewById(R.id.defAdd);
    confirmButton=findViewById(R.id.confirmBtn);
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_add_word);
}
public void confirmBtnClicked(View v){
    SharedPreferences pref = getSharedPreferences("pref", MODE_PRIVATE);
    SharedPreferences.Editor editor = pref.edit();
    String newWord = wordEdit.getText().toString();
    String newDef = defEdit.getText().toString();
    editor.putString("word", newWord);
    editor.putString("def", newDef);
    editor.commit();

}
}

请帮忙!这是 String newWord = wordEdit.getText().toString();有错误,如果我还有什么错误,请通知我。谢谢!

最佳答案

您应该在 wordEdit=(EditText)findViewById(R.id.wordAdd); 之前通过调用 setContentView(R.layout.activity_add_word); 来设置内容 View ;。更改代码如下:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_add_word);
    wordEdit=(EditText)findViewById(R.id.wordAdd);
    defEdit=(EditText)findViewById(R.id.defAdd);
    confirmButton=findViewById(R.id.confirmBtn);

}

关于android - EditText.getText().toString() 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51699750/

相关文章:

java - 获取psx游戏的游戏ID

java - 在android中并行下载位图

android - sync_extras_upload 有什么用?

java - Android SQLite : Using onUpgrade to update data?

android - 编辑时的 numberPicker 格式

android - 设置特定的edittext在进入页面时光标闪烁

android - 移动编辑文本以及软键盘android

Android在ListFragment中实现搜索

java - 从 TextWatcher 方法中清除 TextView

android - 点在 edittext 中不可见,数字 inputType 仅在横向