我有點新,任何幫助,將不勝感激 目前要麼填補它,要麼我得到一個吐司說,有一個空指針。 在if else語句中,它總是會跳轉到else部分。所以,如果不似乎tihnk它是空的,而這就是我得到的吐司(創建在catch)EditText在getText上給出NullPointerException
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;
}
}
}
-1我真的不喜歡這樣的問題(「在我自己的代碼中找到NPE」)'myDb'爲空...爲什麼?你在哪裏分配了「myDb」? – Selvin
發佈您的logcat輸出 – Shruti
在setContentView()中檢查您的佈局名稱。那個佈局是否有那些EditText組件? – Aswin