Android 如何使用raddioButton将数据移动到其他活动

Android 如何使用raddioButton将数据移动到其他活动,android,radio-button,radio-group,Android,Radio Button,Radio Group,我想知道,如果我选择了一个单选按钮,它将在另一个活动中显示字符串,如何解决这个问题? 这是我为我的学校所做的研究,如果你们有最好的方法可以帮助我,在其他网站上总是使用Toast,例如RadioButton,这不能帮我完全 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main);

我想知道,如果我选择了一个单选按钮,它将在另一个活动中显示字符串,如何解决这个问题? 这是我为我的学校所做的研究,如果你们有最好的方法可以帮助我,在其他网站上总是使用Toast,例如RadioButton,这不能帮我完全

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    dateFormatter = new  SimpleDateFormat ("dd-MM-yyyy", Locale.US);

    tvDataResult = (TextView) findViewById(R.id.tvSelectedDate);
    btDataPicker = (Button) findViewById(R.id.btndate);

    btDataPicker.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            showDateDialog();
        }
    });

    Spinner spinner = findViewById(R.id.planets_spinner);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,R.array.planets_array,android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner.setAdapter(adapter);
    spinner.setOnItemSelectedListener(this);

    final EditText edtNama = (EditText)findViewById(R.id.etNama);
    final EditText edtNim =(EditText)findViewById(R.id.etNim);
    tvDataResult = (TextView)findViewById(R.id.tvSelectedDate);
    Button button = (Button)findViewById(R.id.btnTampilkan);

    final RadioGroup rbg = (RadioGroup)findViewById(R.id.rgroup);

    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            String nama = edtNama.getText().toString();
            String nim = edtNim.getText().toString();
            String date = tvDataResult.getText().toString();

            int selectedId = rbg.getCheckedRadioButtonId();
            rblaki=(RadioButton)findViewById(selectedId);
            rbcewe=(RadioButton)findViewById(selectedId);

            Intent intent = new Intent(MainActivity.this,ResultActivity.class);
            intent.putExtra("Nama",nama);
            intent.putExtra("NIM",nim);
            intent.putExtra("tanggal",date);

            startActivity(intent);
        }
    });
}
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
dateFormatter=新的SimpleDataFormat(“dd-MM-yyyy”,Locale.US);
tvDataResult=(TextView)findViewById(R.id.tvSelectedDate);
btDataPicker=(按钮)findViewById(R.id.btndate);
btDataPicker.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
showDateDialog();
}
});
微调器微调器=findViewById(R.id.planets\u微调器);
ArrayAdapter=ArrayAdapter.createFromResource(这个,R.array.planets\u数组,android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
spinner.setOnItemSelectedListener(此);
最终EditText-edtNama=(EditText)findViewById(R.id.etNama);
最终EditText-edtNim=(EditText)findViewById(R.id.etNim);
tvDataResult=(TextView)findViewById(R.id.tvSelectedDate);
按钮按钮=(按钮)findViewById(R.id.btnTampilkan);
最终放射组rbg=(放射组)findViewById(R.id.rgroup);
setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
字符串nama=edtNama.getText().toString();
字符串nim=edtNim.getText().toString();
字符串日期=tvDataResult.getText().toString();
int selectedId=rbg.getCheckedRadioButtonId();
rblaki=(单选按钮)查找视图ID(选择EDID);
rbcewe=(单选按钮)findViewById(selectedId);
意向意向=新意向(MainActivity.this、ResultActivity.class);
意图。putExtra(“Nama”,Nama);
意向。额外(“NIM”,NIM);
意向。额外支付(“tanggal”,日期);
星触觉(意向);
}
});
}
这是我的XML。我只展示这个

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Jenis Kelamin"
    android:textSize="17dp" />

<RadioGroup
    android:id="@+id/rgroup"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:orientation="horizontal">

    <RadioButton
        android:id="@+id/rblaki"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Laki-laki" />

    <RadioButton
        android:id="@+id/rbcewe"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Perempuan" />
</RadioGroup>


<Button
    android:id="@+id/btnTampilkan"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="TAMPILKAN" />

<Button
    android:id="@+id/btnDelete"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="DELETE" />


我认为最好的做法是创建一个实现Serializable的类,使用Bundle extras传递到另一个活动或片段(将对象传递到另一个屏幕的方式)

步骤1-对象示例:记住添加get和setter

   public class Person implements Serializable { 
      private String nama; 
      private String nim;
      private String date;
  }
步骤2-将对象传递给另一个活动

    ....
    Intent intent = new Intent(MainActivity.this, ResultActivity.class);
    intent.putExtra("objParameter", obj); // obj is your class serializable
    startActivity(intent);
  }
      //Inside onCreate() method
      Person personParam = (Person) getIntent().getSerializableExtra("objParameter");
第3步-使对象进入结果性

    ....
    Intent intent = new Intent(MainActivity.this, ResultActivity.class);
    intent.putExtra("objParameter", obj); // obj is your class serializable
    startActivity(intent);
  }
      //Inside onCreate() method
      Person personParam = (Person) getIntent().getSerializableExtra("objParameter");
注意:确保您是在类或内部类中实现Serializable:)