Поместите ListAdapter в Диалог Android - PullRequest
0 голосов
/ 17 ноября 2011

В настоящее время я отображаю результаты поиска по setListAdapter. Я хочу отобразить это в диалоге и не могу понять, как. Вот код, который я использую для создания моего адаптера:

setListAdapter (новый ArrayAdapter (getActivity (), R.layout.location_entry, WeatherData.getSingleton (getActivity (). GetApplication ()). GetLocNames ()));

Есть ли способ вставить это в диалоговое окно, и результаты будут по-прежнему активными?

Ответы [ 3 ]

6 голосов
/ 17 ноября 2011

Просто используйте метод setAdapter() на сборщике:

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setAdapter(new ArrayAdapter(...), new DialogInterface.OnClickListener() {...} );
builder.show();
5 голосов
/ 17 ноября 2011

разве вы не можете создать список в диалоге с помощью некоторых встроенных функций? Вы можете просто передать объект в dielog и выполнить итерацию, чтобы создать список Или вы всегда можете добавить представление, например, представление адаптера

final CharSequence[] items = {"Red", "Green", "Blue"};

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Pick a color");
builder.setItems(items, new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int item) {
        Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
    }
});
AlertDialog alert = builder.create();

или

builder = new AlertDialog.Builder(mContext);
builder.setView(layout);   // YOur view goes here
alertDialog = builder.create();
0 голосов
/ 17 ноября 2011

Вы можете использовать AlertDialog.Builder и установить элементы списка с помощью метода setSingleChoiceItems .

...