1

我正在开发一个应用程序,我需要根据以前的屏幕值动态设置微调器值。我的代码...

主.java。

String[] values = {"All","Only Walk-in","Only Phone","Only Web","Walkin-phone","Walkin-web","phone-web"};

 /*ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_dropdown_item,apttypes);
    spinner.setAdapter(adapter);*/

但在这里我想要的是从前一个屏幕我得到一些价值(比如微调器位置)。基于此,我需要设置微调器值以显示...

如果我得到值 = 0,则表示上一个屏幕的意思,

我需要设置微调器值以显示顶部值数组中的“全部”。

如果我得到 value= 5 的意思,

我想将微调器值设置为“Walkin-web”

我怎样才能做到这一点。谁能帮我这个...

4

6 回答 6

9

使用您用来启动它Activity的附加功能将之前的值传入。Intent然后当你读到值调用

int position = getIntent().getIntExtra( "name", defaultValue );
spinner.setSelection( position );

这会将微调器移动到您选择的索引。

于 2012-11-09T11:50:06.253 回答
3

每次使用以下数组代码并创建新的数组适配器

 String[] str=new String[maxsize-4];
于 2012-11-09T11:56:26.210 回答
1
you can implement onItemClick event on Spinner like this and setSelection(position)

        //Spinner OnItemClick Event here
        payfeeTabStudentNameSpinner.setOnItemSelectedListener(new OnItemSelectedListener(){

            @Override
            public void onItemSelected(AdapterView<?> parent, View view,
                    int position, long id) {
                payfeeTabStudentNameSpinner.setSelection(position);
                spinnerSelectedValue = parent.getItemAtPosition(position).toString();
            }
            @Override
            public void onNothingSelected(AdapterView<?> arg0) {
                // TODO Auto-generated method stub
            }
        });
于 2012-11-09T11:50:12.450 回答
0

您可以使用以下代码分配 Spinner 的位置。

 Spinner s1;
 -----------
 -----------
 int position=valueFromPrevious;
 s1.setSelection(position);
 -----------
 -----------
于 2012-11-09T11:57:10.310 回答
0

在您的第一个活动 A.java 中

public static String Position = YOUR_SPINNER1.getSelectedItem().toString();

在您的第二个活动 B.java 中

    if(A.Position.equals("0")){
//Set your adapter accordingly
 }else if(A.Position.equals("1")){
//Set your adapter accordingly
 }
于 2012-11-09T11:52:52.803 回答
0

使用 Extras 传递先前活动的值,然后当您想在当前活动中使用它时,请遵循以下步骤:

如果你得到字符串值,然后通过 parseInt 方法将其类型转换为整数......

String strtext4 = getIntent().getStringExtra("qualification");

然后

int position = Integer.parseInt(strtext4);

在此之后只需将其设置为您的微调器

qualificationspinner.setSelection(position);
于 2015-10-15T09:39:19.747 回答