これは編集用テキストの問題を含むJavaコードです パッケージmehulvarshney.ebooks;データベースにデータを挿入中にエラーが表示されるAndroid SQlite
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class register extends AppCompatActivity {
EditText ed_name;
EditText ed_pass;
EditText ed_email;
EditText ed_no;
Intent i;
Database db;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.register);
db=new Database(this);
ed_name= (EditText) findViewById(R.id.editfirstname);
ed_pass= (EditText) findViewById(R.id.ed_logpass);
ed_email= (EditText) findViewById(R.id.editemail);
ed_no= (EditText) findViewById(R.id.editmobileno);
}
public void onclick(View view) {
if(view.getId()==R.id.btnsave){
Boolean result=db.insertData(ed_name.getText().toString(),ed_pass.getText().toString(),ed_no.getText().toString(),ed_email.getText().toString());
if(result) {
Toast.makeText(getApplicationContext(), "Successful", Toast.LENGTH_LONG).show();
i = new Intent(this, logged.class);
startActivity(i);
}
else
Toast.makeText(getApplicationContext(),"Unsuccessful",Toast.LENGTH_LONG).show();
}
}
}
このXMLファイル
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#FFBF00"
android:weightSum="1"
tools:context="mehulvarshney.ebooks.register">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="30dp"
android:text="Books e-Shop"
android:textSize="50sp"
android:layout_gravity="center"
android:textColor="#ffffff"
android:gravity="center"
android:layout_weight="0.1"
android:textStyle="bold"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="0.1"
android:layout_marginTop="30dp"
>
<TextView
android:id="@+id/textFirstName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/name"
android:inputType="text"
android:layout_marginStart="20dp"
android:textStyle="bold"
android:textSize="20sp"
/>
<EditText
android:id="@+id/editfirstname"
android:layout_width="wrap_content"
android:layout_marginStart="65dp"
android:layout_height="wrap_content"
android:ems="8">
<requestFocus/>
</EditText>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.1"
android:orientation="horizontal">
<TextView
android:id="@+id/txttextemail"
android:layout_marginStart="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/email_id"
android:textStyle="bold"
android:textSize="20sp"
/>
<EditText
android:id="@+id/editemail"
android:layout_marginStart="47dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="8"
android:inputType="textEmailAddress"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.1"
android:orientation="horizontal">
<TextView
android:id="@+id/txttextmobileno"
android:layout_marginStart="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/mobile_no"
android:textStyle="bold"
android:textSize="20sp"
/>
<EditText
android:id="@+id/editmobileno"
android:layout_marginStart="24dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="8"
android:inputType="phone"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.1"
android:orientation="horizontal">
<TextView
android:id="@+id/textpassword"
android:layout_width="wrap_content"
android:layout_marginStart="20dp"
android:layout_height="wrap_content"
android:text="Password"
android:textStyle="bold"
android:textSize="20sp"
/>
<EditText
android:id="@+id/editpassword"
android:layout_marginStart="33dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="8"
android:inputType="textPassword"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.1"
android:orientation="horizontal">
<TextView
android:id="@+id/textconformpassword"
android:layout_width="wrap_content"
android:layout_height="60dp"
android:layout_marginStart="20dp"
android:text="Confirm Password"
android:textStyle="bold"
android:textSize="20sp"
/>
<EditText
android:id="@+id/editconformpassword"
android:layout_width="wrap_content"
android:layout_marginStart="33dp"
android:layout_height="wrap_content"
android:ems="8"
android:inputType="textPassword"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:gravity="center"
android:orientation="horizontal">
<Button
android:id="@+id/btnsave"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="#FF7F50"
android:gravity="center"
android:onClick="onclick"
android:text="@string/sign_up"
android:textColor="#ffffff"
android:textSize="20sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="0.35"
android:layout_gravity="bottom"
android:gravity="bottom">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:layout_marginStart="80dp"
android:gravity="center"
android:textSize="20sp"
android:textColor="#ffffff"
android:id="@+id/account"
android:textStyle="bold"
android:text="@string/already_have_an_account"
android:onClick="onclick"/>
</LinearLayout>
とデータベースのコードが
package mehulvarshney.ebooks;
/**
* Created by Lakshya Saxena on 09-07-2017.
*/
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class Database extends SQLiteOpenHelper {
private static final String DB_NAME = "EBooks";
private static final String TABLE_NAME = "LOGIN";
private static final String KEY_EMAIL = "Email";
public Database(Context context) {
super(context, DB_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE "+ TABLE_NAME + "(ID INTEGER PRIMARY
KEY,Name TEXT,Password TEXT,Number TEXT,Email TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
onCreate(db);
}
public boolean insertData(String name, String pass, String number,
String email) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("Name", name);
contentValues.put("Password", pass);
contentValues.put("Email", email);
contentValues.put("Number", number);
long result = db.insert(TABLE_NAME, null, contentValues);
db.close();
if (result == -1)
return false;
else
return true;
}
public boolean valid(String s1,String s2) {
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery("SELECT Email and Password FROM " +
TABLE_NAME + " WHERE "
+ KEY_EMAIL + " = '" + s1 + "' and Password = '" + s2 + "'"
,null);
boolean exist = (cursor.getCount()>0);
cursor.close();
db.close();
return exist;
}
}
コードですが
として与えられたエラーを生成しています![]あなたがのEditTextのために間違ったIDを使用しているので、あなたがnullオブジェクト上EditText.getText()
を呼び出していることは明らかであるログから
nullポインタの例外もあります。 –
また、javaはメソッド名のためにキャメルケースの構文を使用します。 'onClick()'メソッドの大文字小文字を確認してください。 –
クラスがありません。logcatの最初の行 –