EditText在getText上给出NullPointerException

时间:2013-09-24 10:57:25

标签: java android function android-edittext gettext

我有点新,任何帮助都会受到赞赏 目前要么已经填写了,要么我正在举杯说有一个空指针。 在if else语句中,它将始终跳转到else部分。所以if似乎并不是空洞的,而这就是我在吐司中得到的东西(在捕获中创造)

package com.example.domoticaapp;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class CreateProfile extends Activity implements OnClickListener
{
//Declare Variables
DBAdapter myDb;
EditText ipInput, nameInput;
Button save;


@Override
protected void onCreate(Bundle savedInstanceState) 
{

    super.onCreate(savedInstanceState);
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.create_profile);

    ipInput = (EditText) findViewById(R.id.ipInput);
    nameInput = (EditText) findViewById(R.id.nameInput);

    save = (Button) findViewById(R.id.save);

    save.setOnClickListener(this);

}



private void saveProfile()
{
    String IP = ipInput.getText().toString();
    String name = nameInput.getText().toString();

    if(IP == null || name == null || IP == "" || name == "")
    {
        Toast.makeText(this, "Name and IP can't be empty!", Toast.LENGTH_SHORT).show();
    }
    else
    {

        try
        {
            myDb.insertRow(name, IP);
            //Intent i = new Intent("com.example.domoticaapp.SQLView");
            //startActivity(i);
        }
        catch(Exception e)
        {

            Toast.makeText(this, e.toString(), Toast.LENGTH_SHORT).show();
        }
    }

}

@Override
public void onClick(View v) 
{
    switch(v.getId())
    {
        case R.id.save:
                saveProfile();
            break;
    }
}

}

3 个答案:

答案 0 :(得分:0)

试试这个

if(TextUtils.isEmpty(name ) &&TextUtils.isEmpty(IP)){
  Toast....
}else{
  ...
}

答案 1 :(得分:0)

试试这个。

if(!IP.equals("") && !name.equals(""))
{
     /** Your Code **/
}
else
{
     Toast.makeText(this, "Name and IP can't be empty!", Toast.LENGTH_SHORT).show();
}

答案 2 :(得分:-2)

DBAdapter myDb;

myDb尚未初始化。你只需声明它