我正在开发一个包含购物车的应用程序,用户可以在其中选择他想要的比萨饼和饮料,并为每个选择使用微调器。我一直在研究如何将微调器中选择的数据发送到下一个活动并将其显示在文本视图上,但我不知道该怎么做。
我的两个微调器都正常工作。
旋转器的代码
Spinner spinner = findViewById(R.id.spinner1);
ArrayAdapter<CharSequence> adapter =
ArrayAdapter.createFromResource(this,
R.array.numbers, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource
(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(this);
Spinner spinner2 = findViewById(R.id.spinner2);
ArrayAdapter<CharSequence> adapter1 =
ArrayAdapter.createFromResource(this,
R.array.drinks, android.R.layout.simple_spinner_item);
adapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(adapter1);
spinner2.setOnItemSelectedListener(this);
@Override
public void onItemSelected(AdapterView<?> parent, View view, int
position, long l) {
String text = parent.getItemAtPosition(position).toString();
Toast.makeText(parent.getContext(), text, Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
意图的代码
Button enviar = findViewById(R.id.enviar);
enviar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent resumenPedido = new Intent(MainActivity.this, Resumen.class);
startActivityForResult(resumenPedido, 1);
}
});
你应该使用 Intent.putExtra() 方法。请检查以下内容并相应地使用。
这是从微调器获取选定值的方法:
CharSequence spinner1SelectedData = (CharSequence) spinner.getSelectedItem();
CharSequence spinner2SelectedData = (CharSequence) spinner2.getSelectedItem();
然后 onClick 侦听器将其替换为以下内容:
Intent resumenPedido = new Intent(MainActivity.this, Resumen.class);
resumePedido.putExtra("data_spinner_1", spinner1SelectedData.toString());
resumePedido.putExtra("data_spinner_2", spinner2SelectedData.toString());
startActivity(mIntent);
除非您希望回调源活动,否则您不必使用 startActivityForResult。
在第二个活动中,您可以获得如下数据:
if (getIntent() != null){
String spinner1Value = getIntent().getStringExtra("data_spinner_1");
String spinner2Value = getIntent().getStringExtra("data_spinner_2");
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句