我不知道我做错了什么。
java.lang.NullPointerException:尝试调用虚方法 ' android.text.Editable android.widget.EditText.getText()'在null 对象参考
在 si.skorajporocena.skorajporocena.PrvaPrijavaActivity $ 1.onClick(PrvaPrijavaActivity.java:51)
以下是代码:
EditText pass;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_prva_prijava);
pass = (EditText) findViewById(R.id.etPassword);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.floatingActionButton);
viewPager = (ViewPager) this.findViewById(R.id.pager);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(i==0){
if (pass.getText().toString().isEmpty()) { // <-- this is the 51 line
Snackbar.make(view, "Niste vnesli aktivacijske kode.", Snackbar.LENGTH_SHORT).
setAction("Action", null).show();
}
else {
i=1;
viewPager.setCurrentItem(i);
}
}
else if(i>0) {
i++;
viewPager.setCurrentItem(i);
if(i==3){
Intent intent;
intent = new Intent(getApplicationContext(),MainActivity.class);
startActivity(intent);
finish();
}
//Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
// .setAction("Action", null).show();
}
}
});
答案 0 :(得分:-1)
检查您的布局中是否存在视图R.id.etPassword。
答案 1 :(得分:-1)
您的os.putenv
变量为空。最可能的原因是pass
答案 2 :(得分:-1)
我已经解决了这个问题。
问题是pass = (EditText) findViewById(R.id.etPassword);
在if语句之外,我需要变量pass
。
这是代码现在的样子:
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.floatingActionButton);
viewPager = (ViewPager) this.findViewById(R.id.pager);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(i==0){
pass = (EditText) findViewById(R.id.etPassword);
if (pass.getText().toString().isEmpty()) { // <-- this is the 51 line
Snackbar.make(view, "Niste vnesli aktivacijske kode.", Snackbar.LENGTH_SHORT).
setAction("Action", null).show();
}
else {
i=1;
viewPager.setCurrentItem(i);
}
}
答案 3 :(得分:-1)
我认为你正在使用id&#39; etPassword &#39;来自其他.xml文件。这方式代码编译成功但运行时点击浮动按钮空指针异常发生。