Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.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
Java 在Android中发送单选按钮值_Java_Android_Android Activity_Radio Button - Fatal编程技术网

Java 在Android中发送单选按钮值

Java 在Android中发送单选按钮值,java,android,android-activity,radio-button,Java,Android,Android Activity,Radio Button,这是我的AddLift.java: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_add_lift); final EditText Origin = (EditText)findViewById(R.id.addOrigin); final Ed

这是我的AddLift.java:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_add_lift);

    final EditText Origin = (EditText)findViewById(R.id.addOrigin);
    final EditText Destination = 
(EditText)findViewById(R.id.addDestination);
    final EditText Time = (EditText)findViewById(R.id.setTime);
    final EditText  Seats = (EditText)findViewById(R.id.numOfSeats);
    final RadioGroup DriverLifter = (RadioGroup)findViewById(driverLifter);
    final RadioButton selectedButton = 
(RadioButton)findViewById(selectedButton);

    Button submit = (Button)findViewById(R.id.submitButton);
    submit.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            String addOrigin = Origin.getText().toString();
            String addDestination = Destination.getText().toString();
            String setTime = Time.getText().toString();
            String numOfSeats = Seats.getText().toString();
            int selectedId = DriverLifter.getCheckedRadioButtonId();
            selectedButton = (RadioButton)findViewById(selectedId);

            Intent intent = new Intent(AddLift.this, ViewLiftBoard.class);
            intent.putExtra("ORIGIN", addOrigin);
            intent.putExtra("DESTINATION", addDestination);
            intent.putExtra("TIME", setTime);
            intent.putExtra("SEATS", numOfSeats);
            intent.putExtra("RADIO", driverLifter);
            startActivity(intent);

        }
    });
这是我的ViewLiftBoard.java:

public class ViewLiftBoard extends AppCompatActivity {

    String Origin;
    String Destination;
    String Time;
    String Seats;
    int DriverLifter;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_view_lift_board);


        Origin = getIntent().getExtras().getString("ORIGIN");
        Destination = getIntent().getExtras().getString("DESTINATION");
        Time = getIntent().getExtras().getString("TIME");
        Seats = getIntent().getExtras().getString("SEATS");
        DriverLifter = getIntent().getExtras().getInt("RADIO");

        TextView textView = (TextView)findViewById(R.id.textView);
        textView.setText("Origin:"+ " 
        "+Origin+'\n'+"Destination:"+""+Destination+'\n'+"Time:"+" 
        "+Time+'\n'+"Number of Seats:"+" "+Seats+'\n'+"Type:"+" "+DriverLifter);

   }
}

但是当我运行应用程序时,“Type”会显示为一个数字,而不是所选单选按钮的值?任何帮助都会很好

这是因为您正在从intent extra中检索整数数据类型

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_add_lift);

        final EditText Origin = (EditText)findViewById(R.id.addOrigin);
        final EditText Destination = 
    (EditText)findViewById(R.id.addDestination);
        final EditText Time = (EditText)findViewById(R.id.setTime);
        final EditText  Seats = (EditText)findViewById(R.id.numOfSeats);
        final RadioGroup DriverLifter = (RadioGroup)findViewById(driverLifter);
        final RadioButton selectedButton = 
    (RadioButton)findViewById(selectedButton);

        Button submit = (Button)findViewById(R.id.submitButton);
        submit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String addOrigin = Origin.getText().toString();
                String addDestination = Destination.getText().toString();
                String setTime = Time.getText().toString();
                String numOfSeats = Seats.getText().toString();
                int selectedId = DriverLifter.getCheckedRadioButtonId();
                selectedButton = (RadioButton)findViewById(selectedId);
                String selectedradio=selectedButton.gettex();
                Intent intent = new Intent(AddLift.this, ViewLiftBoard.class);
                intent.putExtra("ORIGIN", addOrigin);
                intent.putExtra("DESTINATION", addDestination);
                intent.putExtra("TIME", setTime);
                intent.putExtra("SEATS", numOfSeats);
                intent.putExtra("RADIO", selectedradio);
                startActivity(intent);

            }
        });



ViewLiftBoard.java:


public class ViewLiftBoard extends AppCompatActivity {

    String Origin;
    String Destination;
    String Time;
    String Seats;
    String DriverLifter;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_view_lift_board);


        Origin = getIntent().getExtras().getString("ORIGIN");
        Destination = getIntent().getExtras().getString("DESTINATION");
        Time = getIntent().getExtras().getString("TIME");
        Seats = getIntent().getExtras().getString("SEATS");
        DriverLifter = getIntent().getExtras().getString("RADIO");

        TextView textView = (TextView)findViewById(R.id.textView);
        textView.setText("Origin:"+ " 
        "+Origin+'\n'+"Destination:"+""+Destination+'\n'+"Time:"+" 
        "+Time+'\n'+"Number of Seats:"+" "+Seats+'\n'+"Type:"+" "+DriverLifter);

   }
}
   DriverLifter= getIntent().getExtras().getInt("RADIO");
要解决您的问题,您必须将此额外内容作为字符串放入意图中,因此,不要这样做:

 intent.putExtra("RADIO", driverLifter);
这样做:

     intent.putExtra("RADIO",  (RadioButton) findValueById(DriverLifter .getCheckedRadioButton()).  getText(). toString()) ;
然后像这样提取多余的部分:

 DriverLifter= getIntent().getExtras().getString("RADIO");

这是因为您正在从intent extra检索整数数据类型

   DriverLifter= getIntent().getExtras().getInt("RADIO");
要解决您的问题,您必须将此额外内容作为字符串放入意图中,因此,不要这样做:

 intent.putExtra("RADIO", driverLifter);
这样做:

     intent.putExtra("RADIO",  (RadioButton) findValueById(DriverLifter .getCheckedRadioButton()).  getText(). toString()) ;
然后像这样提取多余的部分:

 DriverLifter= getIntent().getExtras().getString("RADIO");

如果要从所选单选按钮获取文本,可以使用下一个组合:

RadioGroup driverLifter = (RadioGroup)findViewById(R.id.driverLifter);
String selectedButtonText = ((RadioButton)findViewById(driverLifter.getCheckedRadioButtonId())).getText().toString();

顺便说一句,根据Java命名约定,变量应该从小写开始。

如果您想从所选单选按钮获取文本,可以使用下一个组合:

RadioGroup driverLifter = (RadioGroup)findViewById(R.id.driverLifter);
String selectedButtonText = ((RadioButton)findViewById(driverLifter.getCheckedRadioButtonId())).getText().toString();

顺便说一下,根据Java命名约定,变量应该从小写开始。

这里的类型是什么。我没有看到它传递到下一个活动。可能重复的请检查这是否有帮助。这里的类型是什么。我没有看到它传递到下一个活动。可能重复的请检查这是否有帮助。