라디오버튼에서 save1을 선택하느냐 save2를 선택하느냐에 따라서 icelist와 waterlist로 각각의 디비를 만드는 코드를 짰습니다.
분명 에러도 안나오고 에뮬에도 돌아가는데
라디오버튼 선택하고 저장을 누르면 (mOnClick) 다음화면으로 안 넘어가고 그냥 그 자리에 있습니다.
뭐가 문제일까요?
public class testdb extends Activity {
EditText nameEdit;
EditText amountEdit;
ImageButton insertBtn;
DBHelper dbHelper;
RadioButton radio_save2;
RadioButton radio_save1;
final static String dbName = "waterlist.db";
final static int dbVersion = 1;
DBHelper2 dbHelper2;
final static String dbName2 = "icelist.db";
final static int dbVersion2 = 1;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.dbtest);
// TODO Auto-generated method stub
public void mOnClick(View v){
switch (v.getId()) {
case R.id.radio_save2: //냉장버튼
nameEdit = (EditText)findViewById(R.id.nameedit);
amountEdit = (EditText)findViewById(R.id.amountedit);
dbHelper = new DBHelper(this, dbName, null, dbVersion);
SQLiteDatabase db;
String sql;
String name = nameEdit.getText().toString();
String amount = amountEdit.getText().toString();
db = dbHelper.getWritableDatabase();
sql = String.format("INSERT INTO waterlist VALUES(NULL, '%s', '%s', );", name, amount );
db.execSQL(sql);
Intent intent = new Intent(testdb.this, dbdb.class);
startActivity(intent);
dbHelper.close();
db.close();
break;
case R.id.radio_save1: //냉동버튼
nameEdit = (EditText)findViewById(R.id.nameedit);
amountEdit = (EditText)findViewById(R.id.amountedit);
dbHelper2 = new DBHelper2(this, dbName2, null, dbVersion2);
SQLiteDatabase db2;
String sql2;
String name2 = nameEdit.getText().toString();
String amount2 = amountEdit.getText().toString();
db2 = dbHelper2.getWritableDatabase();
sql2 = String.format("INSERT INTO icelist VALUES(NULL, '%s', '%s', );", name2, amount2 );
db2.execSQL(sql2);
Intent intent1 = new Intent(testdb.this, dbset.class);
startActivity(intent1);
dbHelper2.close();
db2.close();
break;
}
}
public void cOnClick(View V){
Intent intent = new Intent(testdb.this, start.class);
startActivity(intent);
}
}
class DBHelper extends SQLiteOpenHelper{
public DBHelper(Context context, String name, CursorFactory factory, int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE waterlist (_id INTEGER PRIMARY KEY AUTOINCREMENT," +
" name TEXT, age INTEGER);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS waterlist");
onCreate(db);
}
}
class DBHelper2 extends SQLiteOpenHelper{
public DBHelper2(Context context, String name, CursorFactory factory, int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase db2) {
db2.execSQL("CREATE TABLE icelist (_id INTEGER PRIMARY KEY AUTOINCREMENT," +
" name2 TEXT, age2 INTEGER);");
}
@Override
public void onUpgrade(SQLiteDatabase db2, int oldVersion, int newVersion) {
db2.execSQL("DROP TABLE IF EXISTS icelist");
onCreate(db2);
}
}




xml 에서 OnClick 을 설정 하셨나요? 현 코드에는 onClickListener 가 안보이는데요...
xml도 봐야 알 수 있을 듯 하네요.