Java 微调器值到字符串

Java 微调器值到字符串,java,android,spinner,android-spinner,Java,Android,Spinner,Android Spinner,我一直在制作我的第一个应用程序,但进展缓慢。我只是想知道如何返回一个微调器值以作为字符串传递 这是我的密码: 首先是事件类: public void event(){ calanderBtn = (Button)findViewById(R.id.eventBtn); calanderBtn.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(Vi

我一直在制作我的第一个应用程序,但进展缓慢。我只是想知道如何返回一个微调器值以作为字符串传递

这是我的密码:

首先是事件类:

public void event(){
    calanderBtn = (Button)findViewById(R.id.eventBtn);
    calanderBtn.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(Intent.ACTION_INSERT);
            intent.setType("vnd.android.cursor.item/event");
            intent.putExtra(CalendarContract.Events.TITLE, "Home");
            intent.putExtra(CalendarContract.Events.DESCRIPTION,  "Cleaning : ");
            intent.putExtra(CalendarContract.Events.EVENT_LOCATION, "Home");
            startActivity(intent);
        }
    });
}
第二个是微调器类:

public void selectcleaning() {
        spCleaning = (Spinner) findViewById(spinner);

        adapterCleaningType = new ArrayAdapter<String>(this,
                android.R.layout.simple_spinner_item, cleaningType);
        adapterCleaningType.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spCleaning.setAdapter(adapterCleaningType);
    }
public void selectcleaning(){
spCleaning=(微调器)findViewById(微调器);
adapterCleaningType=新阵列适配器(此,
android.R.layout.simple\u微调器\u项目,清理类型);
adapterCleaningType.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
spCleaning.setAdapter(adapterCleaningType);
}

我正在尝试从selectcleaning中选择值(值为Yes或No),并将其传递到事件类日历中的描述中,我不确定该怎么办。

您应该尝试使用微调器类的覆盖,如下所示:

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
    // your code here

}});
spinner.setOnItemSelectedListener(新的OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView父视图、视图selectedItemView、整型位置、长id){
//你的代码在这里
}});

出于您的目的,“int position”将等于0(是)或1(否)

尝试在选定的侦听器上设置一个项目。选择项目后,可以将该值存储在全局变量中。默认情况下,它也会获取第一项

    spCleaning.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {

            // Value is current spinner item
            globalStringVariable = (String) parent.getItemAtPosition(position);

        }

        // Because AdapterView is an abstract class, onNothingSelected must be defined
        @Override
        public void onNothingSelected(AdapterView<?> parent) {

            // This is default, before you've selected anything. 
            // It gets the first value.
            globalStringVariable = parent.getItemAtPositon(0);
        }

    });
spCleaning.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
//值是当前微调器项
globalStringVariable=(字符串)parent.getItemAtPosition(位置);
}
//因为AdapterView是一个抽象类,所以必须定义onNothingSelected
@凌驾
未选择公共无效(AdapterView父级){
//这是默认值,在您选择任何内容之前。
//它得到第一个值。
globalStringVariable=parent.getItemAtPositon(0);
}
});

您可以使用此代码获取值

Spinner spinner = (Spinner)findViewById(R.id.spinner);
String text = spinner.getSelectedItem().toString();
或者使用OnItemSelectedListener()选择微调器时获取值

公共类SpinneActivity扩展活动实现
OnItemSelectedListener{
@凌驾
受保护的void onStart(){
微调器微调器=(微调器)findViewById(R.id.Spinner);
spinner.setOnItemSelectedListener(此);
}
已选择公共视图(AdapterView父视图、视图、,
内部位置,长id){
//已选择一个项目。您可以使用
//父项getItemAtPosition(pos)
}
未选择公共无效(AdapterView父级){
//另一个接口回调
}
}
public class SpinnerActivity extends Activity implements 

OnItemSelectedListener {
    @Override
    protected void onStart() {
         Spinner spinner = (Spinner) findViewById(R.id.spinner);
         spinner.setOnItemSelectedListener(this);
    }

    public void onItemSelected(AdapterView<?> parent, View view,
            int pos, long id) {
        // An item was selected. You can retrieve the selected item using
        // parent.getItemAtPosition(pos)
    }

    public void onNothingSelected(AdapterView<?> parent) {
        // Another interface callback
    }
}