【发布时间】:2019-09-14 20:07:54
【问题描述】:
我是 Android 的初学者。我的 android 代码中有一个微调器。它从房间数据库中获取值,一旦选择,该值将被添加到列表视图中。我有两个问题 a) 我在 Spinner 中看到了值。但我无法选择它,而且这个微调器的 onItemSelected 也不起作用 b)我想在我的列表视图中添加一个删除图标以及这些值,以便如果用户对这些值不感兴趣,他可以删除它。
请有人帮我解决这个问题吗?
代码如下:
public class MainActivity extends AppCompatActivity
{
private List<String> tasks = new ArrayList<String>();
private ArrayAdapter<String> adapter;
private ListView consultantsList;
private Spinner spinner;
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
consultantsRepository consrepo =
new consultantsRepository (getApplicationContext());
ArrayList<String> oncons = consrepo.getConsultants();
ArrayAdapter<String> consarrayadapter =
new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,
oncons);
adapter = new ArrayAdapter<String>
(this,android.R.layout.simple_list_item_1,tasks);
ListView consultantsList = (ListView) findViewById(R.id.ListToSend);
consultantsList.setAdapter(adapter);
spinner = (Spinner) findViewById(R.id.consSpinner);
spinner.setAdapter(consarrayadapter);
consarrayadapter.setDropDownViewResource
(android.R.layout.simple_spinner_dropdown_item);
spinner.setOnItemSelectedListener
(new AdapterView.OnItemSelectedListener()
{
@Override
public void onItemSelected
(AdapterView<?> parent, View view, int position, long id)
{
String item = parent.getItemAtPosition(position).toString();
Toast.makeText(getApplicationContext(), item,
Toast.LENGTH_LONG).show();
tasks.add(item);
adapter.notifyDataSetChanged();
}
});
}
}
【问题讨论】:
-
ArrayList<String> oncons中有多少个元素? -
感谢您的回复。只有 4 个
-
@DBHari 你是如何运行这段代码的?不覆盖 spinner.setOnItemSelectedListener 中的 onNothingSelected() ,否则您的代码看起来不错。