Java 将微调器数组中的选定值传递给另一个类

Java 将微调器数组中的选定值传递给另一个类,java,android,arrays,android-intent,spinner,Java,Android,Arrays,Android Intent,Spinner,我正在构建一个具有自毁图像的应用程序,我正在尝试将从微调器中选择的值传递给另一个类 final String titles[] = {"1 Second","2 Seconds", "3 Seconds","4 Seconds","5 Seconds","6 Seconds","7 Seconds", "8 seconds, "9 seconds", 10 seconds}; mSeconds = (Spinner) view.findViewById(R.id.secondsSpinn

我正在构建一个具有自毁图像的应用程序,我正在尝试将从微调器中选择的值传递给另一个类

final String titles[] = {"1 Second","2 Seconds", "3 Seconds","4 Seconds","5 Seconds","6 Seconds","7 Seconds", "8 seconds, "9 seconds", 10 seconds};
    mSeconds = (Spinner) view.findViewById(R.id.secondsSpinner);
    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_spinner_item, titles);
    arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

mSeconds.setAdapter(arrayAdapter);
mSeconds.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
        int secondsToUse = position + 1;
    }

    @Override
    public void onNothingSelected(AdapterView<?> parentView) {
        // do nothing
    }

});
如何将所选值传递给另一个类?我的方法传递整个数组,而不是所选的项

Spinner.getSelectedItem();
将为您获取所选项目

Intent recipientsIntent = new Intent(getActivity(), RecipientsActivity.class);
                recipientsIntent.putExtra("spinnerItem", Spinner.getSelectedItem());
                startActivity(recipientsIntent);
如果您需要此lmk背后的额外逻辑。。另外
Spinner.getSelectedItem()
将返回一个对象。你需要把这一切都抛给你所期待的。例如一个字符串<代码>微调器。getSelectedItem().toString()

要在intent中传递int,请执行以下操作:

Intent recipientsIntent = new Intent(getActivity(), RecipientsActivity.class);
recipientsIntent.putExtra("YOUR_INT_KEY", secondsToUse);
startActivity(recipientsIntent);
int不能按预期工作的原因是因为它是onItemSelected()函数的局部变量。将其设为成员变量或将其置于选定的外部

final String titles[] = {"1 Second","2 Seconds", "3 Seconds","4 Seconds","5 Seconds","6 Seconds","7 Seconds", "8 seconds, "9 seconds", 10 seconds};  
Bundle b=new Bundle();
b.putStringArray(key, titles);
Intent i=new Intent(context, Class);
i.putExtras(b);
startActivity(i);
将为您获取所选项目

Intent recipientsIntent = new Intent(getActivity(), RecipientsActivity.class);
                recipientsIntent.putExtra("spinnerItem", Spinner.getSelectedItem());
                startActivity(recipientsIntent);
如果您需要此lmk背后的额外逻辑。。另外
Spinner.getSelectedItem()
将返回一个对象。你需要把这一切都抛给你所期待的。例如一个字符串<代码>微调器。getSelectedItem().toString()

要在intent中传递int,请执行以下操作:

Intent recipientsIntent = new Intent(getActivity(), RecipientsActivity.class);
recipientsIntent.putExtra("YOUR_INT_KEY", secondsToUse);
startActivity(recipientsIntent);
int不能按预期工作的原因是因为它是onItemSelected()函数的局部变量。将其设为成员变量或将其置于选定的外部

final String titles[] = {"1 Second","2 Seconds", "3 Seconds","4 Seconds","5 Seconds","6 Seconds","7 Seconds", "8 seconds, "9 seconds", 10 seconds};  
Bundle b=new Bundle();
b.putStringArray(key, titles);
Intent i=new Intent(context, Class);
i.putExtras(b);
startActivity(i);
为了阅读:

Bundle b=this.getIntent().getExtras();
String[] array=b.getStringArray(key);
为了阅读:

Bundle b=this.getIntent().getExtras();
String[] array=b.getStringArray(key);

这是代码

发送:

Intent intentS=new Intent(getActivity(), Main_ExerciseLibrary_Overview_Activity.class);
                    intentS.putExtra("yourInt",Value);
                    startActivity(intentS);
接收:

Bundle b = getIntent().getExtras();
    int myint = b.getInt("yourInt");

这是代码

发送:

Intent intentS=new Intent(getActivity(), Main_ExerciseLibrary_Overview_Activity.class);
                    intentS.putExtra("yourInt",Value);
                    startActivity(intentS);
接收:

Bundle b = getIntent().getExtras();
    int myint = b.getInt("yourInt");


你必须从你的示例代码中传递什么值?@IMMAR用户从喷丝器中选择的值比你在这里发布之前尝试谷歌搜索的@smithyy可能重复的值还要多。看看我发布的api引用……你必须从示例代码中传递什么值?@imma比用户从Spinnerry中选择的值还要多@smithyy在发布之前你是否尝试过谷歌搜索。看看我发布的api引用…我在哪里添加
Spinner.getSelectedItem().toString()
,在我的onItemSelect方法中,您可以将该代码放在onItemSelect接口方法之外。如果您计划立即使用所选的值执行某些操作,您可能希望将内容放入onItemSelect方法中。或者,如果您计划存储值以供以后使用。如果我知道你想对所选项目做什么,那么你就可以更容易地指导你了,谢谢,我会把它放在一个计时器中,所以我想把所选的值放到另一个类中,上传它进行解析,然后再把它放回另一个类中,再把它放到一个计时器中。选择一个参数返回一个我相信的视图。或对象值/位置。使用该值并通过意图将其传递给其他类。如果使用位置,则可以从用于填充微调器的数组中获取所需对象的值。那就随你的便吧!如果你需要更多的帮助,lmk。否则,如果我的答案有助于解决您的问题,您是否可以将其标记为已接受的答案?谢谢请参阅我上面编辑的问题,我将把您的答案放在哪里?在我的onItemSelect方法中,您将把该代码放在onItemSelect接口方法之外。如果您计划立即使用所选的值执行某些操作,您可能希望将内容放入onItemSelect方法中。或者,如果您计划存储值以供以后使用。如果我知道你想对所选项目做什么,那么你就可以更容易地指导你了,谢谢,我会把它放在一个计时器中,所以我想把所选的值放到另一个类中,上传它进行解析,然后再把它放回另一个类中,再把它放到一个计时器中。选择一个参数返回一个我相信的视图。或对象值/位置。使用该值并通过意图将其传递给其他类。如果使用位置,则可以从用于填充微调器的数组中获取所需对象的值。那就随你的便吧!如果你需要更多的帮助,lmk。否则,如果我的答案有助于解决您的问题,您是否可以将其标记为已接受的答案?谢谢请参阅我上面编辑的问题,我将把您的答案
Spinner.getSelectedItem().toString()放在哪里
我想将所选数字从数组传递到另一个类我想将所选数字从数组传递到另一个类我想将所选数字从数组传递到另一个类否我没有在第二次传递使用但不起作用等一下你传递的是整型还是字符串?我有一个字符串数组但是我传递的是一个int位置,我声明了secondsToUse和一个全局变量,现在传递了through,我想从数组中获取所选的数字,传递给另一个类没有,我传递了secondsToUse,但它不起作用等等,你传递的是int还是string?我有一个string数组,但我传递的是int位置i声明了secondsToUse和一个全局变量,现在已经传递了它