connot resolve constructor 'Arrayadapter()'记录这个问题主要是提醒自己不要马虎。
原出错代码
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_dropdown_item,arrwarehouse2);//建立Adapter并绑定数据源
修改后
ArrayAdapter<String> adapter = new ArrayAdapter<String>(InterfaceActivity.this, android.R.layout.simple_spinner_dropdown_item,arrwarehouse2);//建立Adapter并绑定数据源
将第一个代码段中的this改为你的ActivityName.this,或者在文件头部定义context,将this改成context
private Context context;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_interface_out);
context = this;//代表当前页面InterfaceActivityOut.this
Thread desthread = new Thread(new Runnable() {
@Override
public void run() {
if(SqlServerDB.getInstance() == null){
Looper.prepare();
Toast.makeText(context,"数据库连接失败",Toast.LENGTH_SHORT).show();
Looper.loop();
}else {
String sql = "SELECT Destination FROM ItemDestination";
ResultSet rs = SqlServerDB.getInstance().executeQuery(sql);
try {
while (rs.next()) {
arrayDestination = rs.getString("Destination");
arr.add(arrayDestination);
}
} catch (Exception e) {
Log.e(TAG, "从数据库中获取数据错误");
}
handler.post(new Runnable() {
@Override
public void run() {
//设置下拉
spinner =(Spinner)findViewById(R.id.interface_out_spinner);//初始化组件
//String[] arrwarehouse = getResources().getStringArray(R.array.interface_array);//从本地中获取数据源
String [] arrwarehouse2=arr.toArray(newString[arr.size()]);//将数据库中获得的值转换成String[]类型
ArrayAdapter<String> adapter = new ArrayAdapter<String>(context, android.R.layout.simple_spinner_dropdown_item,arrwarehouse2);//建立Adapter并绑定数据源
//第一个参数是在哪个activity上显示,第二个参数是系统输入框样式,第三个参数是数组
spinner.setAdapter(adapter);//绑定Adapter到控件
}
});
}
}
});
desthread.start();
}