[英]sending and receiving the selected spinner information from one activity to another activity
我有10個微調器和一個按鈕。 通過單擊按鈕,活動A將轉到另一個活動B,並且我想通過單擊該按鈕從微調框添加選定的信息,以從活動A發送到活動B,並希望在活動B中顯示選定的微調框信息。
這是我的代碼(活動A):
public class Firstactivity extends MainActivity {
private Button btn;
private Spinner spin;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.third_layout_main);
btn= (Button)findViewById(R.id.btn1s);
spin=(Spinner)findViewById(R.id.spinner1);
final String arr[] = {"NONE"," 1*£5.49","2*2.00","3*4.00"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(Firstactivity.this, android.R.layout.simple_dropdown_item_1line, arr);
spin.setAdapter(adapter);
spin.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
// TODO Auto-generated method stub
Toast.makeText(Firstactivity.this, "the item selected "+arr[arg2],Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
//TODO Auto-generated method stub
}
});
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent inte = new Intent (Firstactivity.this, Finalorder.class);
String Text = spin.getSelectedItem().toString();
startActivity(inte);
}
});
}}
活動B:
public class Finalorder extends MainActivity {
Bundle Bundle;
TextView txt;
Button btn;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.last);
Bundle=getIntent().getExtras();
btn=(Button)findViewById(R.id.btn1s);
Bundle=getIntent().getExtras();
txt.setText(Bundle.getString("SPINNERVAL"));
}
}
您需要使用所有微調器值創建自定義可序列化或可包裹對象。 並通過活動進行轉移。
像這樣:
public class SpinnersData implements Serializable
{
private String spinner1;
private String spinner2;
//....
private String spinner10;
public String getSpinner1()
{
return spinner1;
}
public void setSpinner1(String spinner1)
{
this.spinner1 = spinner1;
}
public String getSpinner2()
{
return spinner2;
}
public void setSpinner2(String spinner2)
{
this.spinner2 = spinner2;
}
public String getSpinner10()
{
return spinner10;
}
public void setSpinner10(String spinner10)
{
this.spinner10 = spinner10;
}
}
將其放在一項活動中:
SpinnersData data = new SpinnersData();
data.setSpinner1(spinner1.getSelectedItem().toString());
data.setSpinner2(spinner2.getSelectedItem().toString());
....
yourIntent.putExtra("someKey", data);
並在onCreate()
中加入另一個活動:
SpinnersData data = (SpinnersData) getIntent().getExtras().getSerializable("someKey");
現在,您可以使用此對象在此處顯示信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.