在我的Android应用程序中,我以编程方式创建布局(即,不用于创建组件布局的xml布局文件),在这种情况下,如何以编程方式创建微调器组件?特别是spinner组件的setAdapter部分,是否可以使用像'android.R.layout.spinner_item'这样的XML布局引用创建一个ArrayAdapter?
Spinner sp_gender = new Spinner(this);
ArrayList<String> spinnerArray = new ArrayList<String>();
ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this,
android.R.layout.spinner_item, new String[] {
"Male",
"Female"
});
sp_gender.setAdapter(spinnerArrayAdapter);
ll_main.addView(sp_gender);
在上面的代码中,我想删除xml文件引用部分'android.R.layout.spinner_item',因为我在活动类中完全创建了布局。
答案 0 :(得分:0)
不可能 。因为ArrayAdapter没有默认构造函数。你还需要指定视图的结构以及它应该绘制视图的原因,这就是为什么arrayadapter将布局id和context作为其参数之一
ArrayAdapter(Context context, int textViewResourceId)
是ArrayAdapter的构造函数,其参数最小。