Как можно раздуть макет, содержащий список в диалоговом окне предупреждения?
Я использую listview с пользовательским адаптером в макете.
Теперь я пытаюсь привести этот макет, содержащий список, в мой alertdialog.
Я попытался принести простые макеты, не содержащие списка, чтобы предупредить диалог с этим кодом, и он работает хорошо.
Но я не могу привести список, содержащий макет, в alertdialog.
AlertDialog.Builder dialog = new AlertDialog.Builder( this );
dialog.setView( getLayoutInflater().inflate( R.layout.smill, null ) );
dialog.setIcon(R.drawable.androidsmile);
dialog.setInverseBackgroundForced(true);
dialog.setTitle( "Select smiley");
dialog.setPositiveButton( "Cancel", null );
dialog.show();
Ответы
Ответ 1
Все, что вы делаете, - это раздувание представления в диалоговом окне вашего предупреждения. Вы не устанавливаете адаптер в этом списке, поэтому, похоже, он не будет работать (поскольку он пуст).
Вам нужно сделать что-то вроде:
View view = getLayoutInflater().inflate( R.layout.smill, null )
ListView listView = (ListView) view.findViewById(R.id.listView);
YourCustomAdapter adapter = new YourCustomAdapter(parameters...);
listView.setAdapter(adapter);
AlertDialog.Builder dialog = new AlertDialog.Builder( this );
dialog.setView(view);
...
...
dialog.show();