Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/190.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在从一个活动移动到另一个活动时,将字符串值设置为微调器 我需要将open_时间字符串值设置为spinner 活动我将得到字符串形式的响应 然后我将该字符串值从FirstActivity传递到bundle 第二项活动_Android - Fatal编程技术网

Android 在从一个活动移动到另一个活动时,将字符串值设置为微调器 我需要将open_时间字符串值设置为spinner 活动我将得到字符串形式的响应 然后我将该字符串值从FirstActivity传递到bundle 第二项活动

Android 在从一个活动移动到另一个活动时,将字符串值设置为微调器 我需要将open_时间字符串值设置为spinner 活动我将得到字符串形式的响应 然后我将该字符串值从FirstActivity传递到bundle 第二项活动,android,Android,编码: SecondActivity.java: String open_time; Spinner staticSpinner = (Spinner) findViewById(R.id.static_spinner); Bundle bundle = getIntent().getExtras(); if (bundle != null) { open_time = bundle.getString("open_time");

编码

SecondActivity.java:

  String open_time;

  Spinner staticSpinner = (Spinner) findViewById(R.id.static_spinner);

  Bundle bundle = getIntent().getExtras();

        if (bundle != null) {
                open_time = bundle.getString("open_time");

 }
  • 我唯一的问题是,当进入第二个活动时 字符串值必须设置为微调器。有人帮我吗

编辑:我尝试了Spinner.setPrompt(打开时间)中的
。但这对我不起作用。

Android微调器需要适配器。因此,您应该为它们准备一个简单的适配器

String[] list = new String[] {open_time};

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
    android.R.layout.simple_spinner_item, list);

staticSpinner.setAdapter(adapter);
String[]list=新字符串[]{open_time};
ArrayAdapter=新的ArrayAdapter(此,
android.R.layout.simple\u微调器\u项目,列表);
staticSpinner.setAdapter(适配器);

我用下面的代码解决了这个问题:

int s3; 

s3 = fromSpinnerAdapter.getPosition(open_time);
 fromSpinner.setSelection(s3);
试试这个代码

private ArrayList<String> list;
private int selectedItem = -1;

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
    android.R.layout.simple_spinner_item, list);

staticSpinner.setAdapter(adapter);

staticSpinner.setOnItemSelectedListener(this);

@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {

    Spinner selectedSpinner = (Spinner) adapterView;

    switch (selectedSpinner.getId()) {
        case R.id.sp_actions:

                String row_data = sp_actions.getSelectedItem();
                Log.d(TAG, "" + row_data);

                // pass these variable to new activity and call setSelected method
                selectedItem = list.indexOf(row_data);

            break;
        }
}
私有数组列表;
private int selectedItem=-1;
ArrayAdapter=新的ArrayAdapter(此,
android.R.layout.simple\u微调器\u项目,列表);
staticSpinner.setAdapter(适配器);
staticSpinner.setOnItemSelectedListener(此);
@凌驾
已选择公共视图(AdapterView AdapterView、View视图、int i、long l){
微调器选择微调器=(微调器)适配器视图;
开关(selectedSpinner.getId()){
案例R.id.sp_行动:
String row_data=sp_actions.getSelectedItem();
Log.d(标记“”+行数据);
//将这些变量传递给新活动并调用setSelected方法
selectedItem=list.indexOf(行数据);
打破
}
}

您可以使用项目的id或索引在微调器中设置值。使用staticSpinner.setSelection(索引)@androidnoobdev在我的第一个活动中,我从json中获得一个字符串值。这个值必须在第二个活动的微调器中设置。可能吗?我希望您有一个选项列表,可以显示在微调器中,并存储在arraylist或任何集合中。所以,获取该项的索引并将其传递给新活动,然后在第二个活动微调器中设置所选的索引项。