我正在使用eneter框架来处理我的android应用程序中的通信; 问题是当我正在尝试填充微调器时,将适配器设置为微调器会导致未定义的异常
这里是代码
public void populateSpinner(TypedResponseReceivedEventArgs<String> arg1){
List<String> list = new ArrayList<String>();
String listf = arg1.getResponseMessage();
//sendToDebug(listf);
StringTokenizer tokenizer = new StringTokenizer(listf,",");
while(tokenizer.hasMoreElements()){
list.add((String)tokenizer.nextElement());
}
//EditText text = (EditText)findViewById(R.id.number2EditText);
//text.setText(list.size());
//text.setText(listf);
Spinner forfait = (Spinner)findViewById(R.id.forfaitsSpinner);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,list);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
forfait.setAdapter(adapter);
}
答案 0 :(得分:35)
您正在以下代码段中传递this
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item,list);
不确定此代码位于哪个块或哪个类,但确保 this
引用ActivityName.class
或the context
答案 1 :(得分:0)
这很可能是因为您使用的是ArrayAdapter
而不是SpinnerAdapter
。 ArrayAdapter
是SpinnerAdapter
接口的间接实现者,而不是声明它实现接口的接口。检查未定义的异常。它可能会告诉您setAdapter(ArrayAdapter)
没有定义Spinner
。