android 删除列表项,android – 从spinner删除最后一项删除整个列表

我试图使用一个微调控件,使用户可以删除任何列表元素.

我有一个“添加”按钮,用于向列表中添加元素,还有一个“删除”按钮,用于从列表中删除当前显示的项目.

除非用户删除列表中的最后一项,否则它将按预期工作.此时,所有列表的项目都将被删除.

我的代码如下:

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

// grab our UI elements so we can manipulate them (for the Spinner)

// or add listeners to them (in the case of the buttons)

m_myDynamicSpinner = (Spinner)findViewById(R.id.dynamicSpinner);

m_addItemText = (EditText)findViewById(R.id.newSpinnerItemText);

Button addButton = (Button)findViewById(R.id.AddBtn);

Button clearButton = (Button)findViewById(R.id.ClearBtn);

// create an arrayAdapter an assign it to the spinner

m_adapterForSpinner = new ArrayAdapter(this, android.R.layout.simple_spinner_item);

((ArrayAdapter)m_adapterForSpinner).setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

m_myDynamicSpinner.setAdapter(m_adapterForSpinner);

// add listener for addButton

addButton.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

addNewSpinnerItem();

}

});

clearButton.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

clearSpinnerItems();

}

});

}

// add listener for addButton

private void addNewSpinnerItem() {

if (m_addItemText.getText().length() == 0) {

Toast.makeText(getApplicationContext(), "The textView is empty", Toast.LENGTH_LONG).show();

} else {

CharSequence textHolder = "" + m_addItemText.getText();

((ArrayAdapter) m_adapterForSpinner).add(textHolder);

}

m_addItemText.setText("");

}

private void clearSpinnerItems() {

m_myDynamicSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {

@Override

public void onItemSelected(AdapterView> parent, View view, int pos, long id) {

Object t = m_adapterForSpinner.getItem(pos);

((ArrayAdapter) m_adapterForSpinner).remove((CharSequence) t);

}

@Override

public void onNothingSelected(AdapterView> arg0) {

// TODO

}

});

}

有没有人对如何使这项工作有任何想法或建议?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值