首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从微调器获取文本

从微调器获取文本
EN

Stack Overflow用户
提问于 2010-07-21 16:53:08
回答 5查看 10.4K关注 0票数 6

placeSpinner.getSelectedItem().toString();

所以我使用下面的代码行从我的spinner中获取文本,并将其传递给另一个java文件。但每当我这样做的时候,应用程序都会给我一个强制关闭。

如何解决此错误?

非常感谢。

EN

回答 5

Stack Overflow用户

发布于 2012-08-03 15:44:33

我希望它能对你有所帮助。

尝试此代码...

这里我将所选微调器的索引和值存储到SharedPreferences中

代码语言:javascript
复制
private SharedPreferences prefs;
private String prefName = "spinn";

final List<String> list=new ArrayList<String>();

list.add("Item 1");
list.add("Item 2");
list.add("Item 3");
list.add("Item 4");
list.add("Item 5");

final Spinner sp1= (Spinner) findViewById(R.id.spinner1);
ArrayAdapter<String> adp1=new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_1,list);
adp1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sp1.setAdapter(adp1);

sp1.setOnItemSelectedListener(new OnItemSelectedListener()
{

    @Override
    public void onItemSelected(AdapterView<?> arg0, View arg1,
                    int position, long id) {
    // TODO Auto-generated method stub
    int pos1=position;
    String str1=sp1.getSelectedItem().toString();

    prefs = getSharedPreferences(prefName, MODE_PRIVATE);
    SharedPreferences.Editor editor = prefs.edit();

    //---save the values in the EditText view to preferences---
    editor.putInt("index", pos1);
    editor.putString("value", str1);

    //---saves the values---
    editor.commit();

    }

    @Override
    public void onNothingSelected(AdapterView<?> arg0) {
    // TODO Auto-generated method stub

    }

});

要将该值放入另一个java文件中,请在该java文件中需要的地方编写以下代码。

代码语言:javascript
复制
        prefs = getSharedPreferences(prefName, MODE_PRIVATE);
        int pos=prefs.getInt("index", (Integer) null);
        String value=prefs.getString("value", "");
票数 0
EN

Stack Overflow用户

发布于 2014-12-10 14:57:43

对不起,我发错了。请试一下这个。

代码语言:javascript
复制
String []data={"item1","item2","item3","item4","item5"};

spinner.setAdapter(adaptador);
spinner.setOnItemSelectedListener(
    new AdapterView.OnItemSelectedListener() {
        public void onItemSelected(AdapterView<?> parent,
            android.view.View v, int position, long id) {
                mData.setText("Selected: " + data[position]);
        }

        public void onNothingSelected(AdapterView<?> parent) {
            mData.setText("");
        }
});
票数 0
EN

Stack Overflow用户

发布于 2018-08-31 16:26:16

使用以下命令:

代码语言:javascript
复制
final String text = ((YourAdapter) spinner.getAdapter()).getItem(spinner.getSelectedItemPosition());
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3297607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档