创建不带任何XML的Spinner和Adapter



我可以用类似的代码创建一个非常简单的Spinner

final List<String> categories = new ArrayList<>();
categories.add("First");
categories.add("Second");
categories.add("Third");
final Spinner spinner = new Spinner(context);
final ArrayAdapter<String> dataAdapter = new ArrayAdapter<>(context, R.layout.spinner, categories);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(dataAdapter);

但是,这需要在我的应用程序中使用R.layout.spinner。如何使用自己的纯Java代码来避免这种XML,例如通过实现自己的类ArrayAdapter

ArrayAdapter扩展自定义适配器,并尝试用自己的代码覆盖getView()。您应该能够创建具有空资源id的适配器。您将不得不构建自己的视图,因为您将不再使用资源。

最新更新