Делаю разметку для диалога, где находится Spinner
файл разметки dialog_edit.xml
Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="290dp"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<LinearLayout
android:id="@+id/Edit_lv"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:orientation="vertical"
android:background="@color/Black"
>
<EditText
android:id="@+id/spinner_edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:layout_gravity="center"
android:inputType="number" >
<requestFocus />
</EditText>
<Spinner
android:id="@+id/spinner"
android:layout_height="wrap_content"
android:layout_width="match_parent"
>
</Spinner>
</LinearLayout>
<LinearLayout
android:id="@+id/Edit_lh"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_gravity="center"
android:layout_marginTop="15dp"
android:padding="5dp"
android:background="@color/Black"
android:orientation="horizontal"
>
<Button
android:id="@+id/edit_ADD"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/edit_textADD"
/>
<Button
android:id="@+id/edit_SUB"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/edit_textSUB"
/>
<Button
android:id="@+id/edit_Cancel"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/edit_textCancel"
/>
</LinearLayout>
</LinearLayout>
Создаю таблицу вида Table (int _id , Text NAME)
Вызываю диалог
...
showDialog(DIALOG);
.....
Код: Выделить всё
@Override
protected Dialog onCreateDialog(int id) {
Dialog dialog = null;
switch (id) {
case DIALOG:
AlertDialog.Builder AlE = new AlertDialog.Builder(this);
AlE.setTitle("Title");
LinearLayout view = (LinearLayout)getLayoutInflater().inflate(R.layout.dialog_edit, null); //dialog_edit разметка
AlE.setView(view);
final EditText edt_spin = (EditText)findViewById(R.id.spinner_edit_text);
Button B_ADD = (Button)findViewById(R.id.edit_ADD);
Button B_SUB = (Button)findViewById(R.id.edit_SUB);
Button B_Cancel = (Button)findViewById(R.id.edit_Cancel);
// Пока все работает, диалог вызывается, но стоит добавить заполнение через SimpleCursorAdapter перестает открываться.
Cursor cur = db.query(TABLE, new String[]{"NAME","_id"}, null, null, null, null, null);
startManagingCursor(cur);
String[] spinner_from = new String[]{"NAME","_id"};
int[] spinner_to =new int[]{android.R.id.text1};
SimpleCursorAdapter sca_spinner = new SimpleCursorAdapter(this, android.R.layout.simple_spinner_item,cur,spinner_from,spinner_to);
sca_spinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
Spinner spinner = (Spinner)findViewById(R.id.spinner);
spinner.setAdapter(sca_spinner);
AlE.show();
break;
и т.д.
Что забыл написать, подскажите, уже третий день найти не могу?
БД открыл db = mdb.getWritableDatabase(); в onCreate