بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
ذخیره مقدار چک باکس
سلام خدمت دوستان
من یه برنامه دارم که مقدار textbox رو که از کاربر میگیرم میتونم داخل دیتابیس mySQL ذخیره کنم ولی مقادیر checkBox رو نمیتونم ذخیره کنم و همچنین دوباره نمیتونم بخونم از دیتابیس.
اینم کدهای مرتبط:
dbHandler
public class dbHandler {
private dbOpenHelper dbOpenHelper;
private SQLiteDatabase database;
public dbHandler(Context context) {
dbOpenHelper = new dbOpenHelper(context);
}
// Open Database
public void open() {
database = dbOpenHelper.getWritableDatabase();
}
// Close Database
public void close() {
dbOpenHelper.close();
}
// For Display Database in ListView
public String display(int row, int fild) {
Cursor cursor = database.query(dbOpenHelper.TABLE_NAME, null, null, null, null, null, null);
cursor.moveToPosition(row);
String word = cursor.getString(fild);
return word;
}
// Display row in Update Activity for specific id
public String updateDisplay(int id, int fild) {
Cursor cursor = database.rawQuery("SELECT * FROM " + dbOpenHelper.TABLE_NAME + " WHERE id=" + id, null);
cursor.moveToFirst();
String word = cursor.getString(fild);
return word;
}
// Insert Values Method
public void insert(String word, String translate, String synonym, String antonym,
String example) {
ContentValues contentValues = new ContentValues();
contentValues.put(dbOpenHelper.WORD_WORD, word);
contentValues.put(dbOpenHelper.WORD_TRANSLATE, translate);
// Inserting Row
database.insert(dbOpenHelper.TABLE_NAME, dbOpenHelper.WORD_WORD, contentValues);
}
// Count row number
public Integer count() {
Cursor cursor = database.query(dbOpenHelper.TABLE_NAME, null, null, null, null, null, null);
int rowNumber = cursor.getCount();
return rowNumber;
}
// Update Values Method
public void update(String word, String translate ,int id) {
ContentValues contentValues = new ContentValues();
contentValues.put(dbOpenHelper.WORD_WORD, word);
contentValues.put(dbOpenHelper.WORD_TRANSLATE, translate);
database.update(dbOpenHelper.TABLE_NAME, contentValues, "id=" + id, null);
}
// Delete Method
public void delete(int id) {
database.delete(dbOpenHelper.TABLE_NAME, "id=" + id, null);
}
}
dbOpenHelper
public class dbOpenHelper extends SQLiteOpenHelper {
// Database Name
public static final String DATABASE_NAME = "wordDatabase";
// Contacts table name
public static final String TABLE_NAME = "wordtable";
// Word Table Columns names
public static final String WORD_ID = "id";
public static final String WORD_WORD = "word";
public static final String WORD_TRANSLATE = "translate";
public static final String WORD_NOUN = "doneNoun";
public static final String WORD_VERB = "doneVerb";
// Creating Tables
public static final String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + "("
+ WORD_ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"
+ WORD_WORD + " TEXT,"
+ WORD_TRANSLATE + " TEXT,"
+ WORD_NOUN + " BOOL,"
+ WORD_VERB + " BOOL,");";
// Constructor Table
public dbOpenHelper(Context context) {
super(context, DATABASE_NAME, null, 1);
}
// OnCreate
@Override
public void onCreate(SQLiteDatabase database) {
database.execSQL(CREATE_TABLE);
}
// Upgrading database
@Override
public void onUpgrade(SQLiteDatabase database, int i, int i1) {
// Drop older table if existed
database.execSQL("DROP TABLE IF EXISTS" + TABLE_NAME);
// Create Table again
onCreate(database);
}
}
ActivityInsert
public class ActivityInsert extends Activity {
private Button btnOk;
private Button btnCancel;
private EditText edtWord;
private EditText edtTranslate;
private CheckBox chkNoun;
private CheckBox chkVerb;
private dbHandler handler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_insert);
btnOk = (Button) findViewById(R.id.btnOk);
btnCancel = (Button) findViewById(R.id.btnCancel);
edtWord = (EditText) findViewById(R.id.edtWord);
edtTranslate = (EditText) findViewById(R.id.edtTranslate);
chkNoun = (CheckBox) findViewById(R.id.chkNoun);
chkVerb = (CheckBox) findViewById(R.id.chkVerb);
handler = new dbHandler(this);
btnOk.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
handler.open();
handler.insert(
edtWord.getText().toString(),
edtTranslate.getText().toString(),
edtSynonym.getText().toString(),
edtAntonym.getText().toString(),
edtExample.getText().toString()
);
handler.close();
Toast.makeText(G.context, "Insert Done", Toast.LENGTH_SHORT).show();
finish();
}
});
btnCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
finish();
}
});
}
@Override
protected void onResume() {
super.onResume();
G.currentActivity = this;
}
}
0
0
این همه کد رو کسی نمیاد بخونه! هرجایی که ایراد داشتید رو بزارید. (9 سال پیش)
برای این سوال پاسخی وجود ندارد.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .