如何在android中向微调器添加用户输入的值?

如何在android中向微调器添加用户输入的值?,android,spinner,android-spinner,Android,Spinner,Android Spinner,我创建了一个微调器,其中一个选项是“添加url”。选择“添加url”后,会弹出一个警报,允许用户键入新的url。所有这些都有效。问题是它没有将新url添加到微调器。在用户添加新url后,我将通知阵列适配器。如何修复此问题,以便将新的url值放入微调器中 以下是我的微调器代码: Spinner spinner = (Spinner) findViewById(R.id.spinner); // Create an ArrayAdapter using the string array and a

我创建了一个微调器,其中一个选项是“添加url”。选择“添加url”后,会弹出一个警报,允许用户键入新的url。所有这些都有效。问题是它没有将新url添加到微调器。在用户添加新url后,我将通知阵列适配器。如何修复此问题,以便将新的url值放入微调器中

以下是我的微调器代码:

Spinner spinner = (Spinner) findViewById(R.id.spinner);

// Create an ArrayAdapter using the string array and a default spinner layout
ArrayList<String>urls = new ArrayList<String>(Arrays.asList(getResources().getStringArray(R.array.url_array)));
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, urls);

// Specify the layout to use when the list of choices appears
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
// Apply the adapter to the spinner
spinner.setAdapter(adapter);

spinner.setOnItemSelectedListener(this);
Spinner-Spinner=(Spinner)findViewById(R.id.Spinner);
//使用字符串数组和默认微调器布局创建ArrayAdapter
ArrayListurls=newarraylist(Arrays.asList(getResources().getStringArray(R.array.url_array));
adapter=new ArrayAdapter(这是android.R.layout.simple\u微调器\u项,URL);
//指定显示选项列表时要使用的布局
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
//将适配器应用于微调器
旋转器。设置适配器(适配器);
spinner.setOnItemSelectedListener(此);
以下是我的onItemSelected()代码:

public void未选中(AdapterView父视图、视图视图、int pos、long l){
如果(位置==3){
//设置EditText视图以获取用户输入
最终编辑文本输入=新编辑文本(DeviceServicesActivity.this);
新建AlertDialog.Builder(DeviceServicesActivity.this)
.setMessage(“在此处输入您的点”)
.setView(输入)
.setPositiveButton(“确定”,新的DialogInterface.OnClickListener(){
public void onClick(对话框接口对话框,int whichButton){
可编辑=input.getText();
字符串newString=editable.toString();
添加(新闻字符串);
adapter.notifyDataSetChanged();
}
})
.setNegativeButton(“取消”,新建DialogInterface.OnClickListener()){
public void onClick(对话框接口对话框,int whichButton){
//什么也不做。
}
}).show();
}
}
@凌驾
未选择公共无效(AdapterView AdapterView){
}
每当我尝试添加url时,我在logcat中发现此消息:W/InputEventReceiver:试图完成输入事件,但输入事件接收器已被释放。

而不是使用

  urls.add(newString);
使用

这可能会帮助您解决问题,而不是使用

  urls.add(newString);
使用


这可能对你有所帮助

似乎是合法的。现在不是在添加URL吗?不,我不能让它添加任何内容。我在logcat中发布了一条消息的更新,每次我尝试添加一个新的URL时都会出现。似乎是合法的。现在不是在添加URL吗?不,我不能让它添加任何内容。我在logcat中发布了一条消息的更新,每次我尝试添加一个新的URL时都会出现这条消息。
  adaptor.setNotifyOnChange(true);
  adapter.add(newString);