安卓Spinner

spinner.setOnItemSelectedListener(newOnItemSelectedListener(){publicvoidonItemSelecte... spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?>arg0,View arg1,int arg2,long arg3) {
textView1.setText(((TextView)arg1).getText());
}
});

选什么textView1就显示什么
接下来要加上添加选项的功能

button2.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
String newData = myEditText.getText().toString();
arrayAdapterRef.add(newData);
int position = arrayAdapterRef.getPosition(newData);
spinner.setSelection(position);
}
});

点button2以后没有选择(没调用第一个方法),textView1却变成新添加的项了,为什么?
感觉应该是 spinner.setSelection(position) 这句话的作用,这是什么原理?
请教大牛,多谢
那个 spinner.setSelection(position) 是为后面删除选项做准备的
arrayAdapterRef.remove(spinner.getSelectedItem().toString());

如果去掉setSelection那句话就不能删掉最新添加的选项了吧

怎么让textView1只显示我主动选过的选项?而且不影响remove最新添加的选项?或者有更好的remove方法?
展开
 我来答
xupeiying
2013-08-09 · TA获得超过468个赞
知道小有建树答主
回答量:553
采纳率:0%
帮助的人:567万
展开全部

spinner.setSelection(position); 会触发spinner的选择事件。 而你上面有注册了他的选择事件。 所以spinner.setSelection(position);会触发上面的代码。



试试下面的。


思路就是 点button2的时候,把spinner的ItemSelecteListener暂时设置为null, 完了以后在重新设置。


OnItemSelectedListener  selecteListener = new OnItemSelectedListener() {         
    public void onItemSelected(AdapterView<?>arg0,View arg1,int arg2,long arg3) {          textView1.setText(((TextView)arg1).getText());         
    }
};
spinner.setOnItemSelectedListener(selecteListener);

button2.setOnClickListener(new OnClickListener() {         
    public void onClick(View arg0) {            
        String newData = myEditText.getText().toString();            
        arrayAdapterRef.add(newData);            
        int position = arrayAdapterRef.getPosition(newData);
        
        spinner.setOnItemSelectedListener(null);
        
        spinner.setSelection(position);
        
        spinner.setOnItemSelectedListener(selecteListener);        
     }        
 });
AiPPT
2024-09-19 广告
AiPPT软件是一款由北京饼干科技有限公司开发的智能PPT生成工具,用户可通过官方渠道下载。该软件基于人工智能大模型和自然语言处理技术,支持一键生成高质量PPT,提供丰富的模板和素材选择,满足不同场景需求。用户只需输入主题或文档资料,即可快... 点击进入详情页
本回答由AiPPT提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式