Страница 1 из 1
Работа SimpleCursorAdapter и Spinner
Добавлено: 03 ноя 2013, 20:45
Максим Янчий
Здравствуйте! Я пытаюсь заполнить спиннер данными из БД, но выдает ошибку! Подскажите как правильно это сделать!
Заранее благодарен!
Код: Выделить всё
cursor = dbrv.getAllData();
String[] from = new String[] {DBRV.VIRAZH};
int[] to = new int[] {android.R.id.text1};
scadapter = new SimpleCursorAdapter(this, android.R.layout.simple_spinner_item, cursor, from, to);
scadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
Spinner spinner1 = (Spinner)this.findViewById(R.id.spinner1);
spinner1.setAdapter(scadapter);
spinner1.setPrompt("Регулярное выражение");
spinner1.setSelection(2);
spinner1.setOnItemSelectedListener(new OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
int pos = position;
}
@Override
public void onNothingSelected(AdapterView<?> arg0){
}
});
Re: Работа SimpleCursorAdapter и Spinner
Добавлено: 03 ноя 2013, 20:54
Foenix
интересно, какую ошибку выдает?
Re: Работа SimpleCursorAdapter и Spinner
Добавлено: 03 ноя 2013, 20:57
Максим Янчий
Foenix писал(а):интересно, какую ошибку выдает?
Приложение --- прекратило работу
Re: Работа SimpleCursorAdapter и Spinner
Добавлено: 03 ноя 2013, 21:09
Foenix
ЭТо я представляю.
а в лог посмотреть?
Re: Работа SimpleCursorAdapter и Spinner
Добавлено: 03 ноя 2013, 21:13
Максим Янчий
Foenix писал(а):ЭТо я представляю.
а в лог посмотреть?
давно уже через виртуальный андроид не получается тестировать, так как интернет соединение нужно!
Это база данных
Код: Выделить всё
public class DBRV {
private static final String DATABASE_NAME = "regulv_database.db";
private static final int DATABASE_VERSION = 1;
public static final String ID = "_id";
public static final String VIRAZH = "virazh";
public static final String TABLE_NAME = "regulv_table";
private static final String CREATE_DATABASE = "CREATE TABLE "
+ TABLE_NAME + " (" + ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"
+ VIRAZH + " VARCHAR(255));";
private static final String DROP_TABLE = "DROP TABLE IF EXISTS "
+ TABLE_NAME;
private final Context c;
private DBHelper dbHelper;
private SQLiteDatabase db;
public DBRV(Context context){
c=context;
}
public void open(){
dbHelper = new DBHelper(c, DATABASE_NAME, null, DATABASE_VERSION);
db = dbHelper.getWritableDatabase();
}
public void close(){
if (dbHelper!=null) dbHelper.close();
}
public void delete(long id){
db.delete(TABLE_NAME, ID + "=" + id, null);
}
public Cursor getAllData(){
return db.query(TABLE_NAME, null, null,null,null,null,null);
}
public void insert(String virazh) {
ContentValues cv = new ContentValues();
cv.put(VIRAZH, virazh);
db.insert(TABLE_NAME, VIRAZH, cv);
}
private class DBHelper extends SQLiteOpenHelper {
public DBHelper(Context context, String name, CursorFactory factory, int Version){
super(context, name, factory, Version);
}
public void onCreate(SQLiteDatabase db){
db.execSQL(CREATE_DATABASE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL(DROP_TABLE);
onCreate(db);
}
}
}
Re: Работа SimpleCursorAdapter и Spinner
Добавлено: 03 ноя 2013, 21:45
Foenix
придется тебе эмулятор запустить и протестировать на нем.
Re: Работа SimpleCursorAdapter и Spinner
Добавлено: 03 ноя 2013, 22:01
Максим Янчий
Foenix писал(а):придется тебе эмулятор запустить и протестировать на нем.
Спасибо, я понял где была ошибка!
Спасибо Большое!
Re: Работа SimpleCursorAdapter и Spinner
Добавлено: 03 ноя 2013, 22:30
Foenix
я просто волнуюсь, как же ты дальше - так и будешь гадать? Сложно писать программу не видя лога.