根据在安卓中选中的单选按钮打开一个新活动



我正在安卓上做一个项目。我仍然是安卓应用程序开发的初学者。我有一个开始按钮,单击该按钮后,将根据选中的单选按钮将我定向到新活动。我有 5 个单选按钮,选择一个并按下 go 按钮后,它应该进入新活动。问题是在我的手机上加载应用程序时,单选按钮正在工作,当我单击其中一个选项时它们会显示,但是当我单击Go时,没有任何反应。代码如下:

JAVA 代码(印度.java)

package com.example.android.travelindia;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.RadioButton;
public class India extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_india);
        this.finish();
       final RadioButton beach = (RadioButton) findViewById(R.id.radio1);
       final RadioButton hillstation = (RadioButton) findViewById(R.id.radio2);
       final RadioButton wildlife = (RadioButton) findViewById(R.id.radio3);
       final RadioButton historical = (RadioButton) findViewById(R.id.radio4);
       final RadioButton reli = (RadioButton) findViewById(R.id.radio5);
       final Button go = (Button) findViewById(R.id.button1);
        go.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (beach.isChecked()) {
                    Intent Intents= new Intent(India.this, sands.class); // <----- START "BEACHES" ACTIVITY
                    startActivity(Intents);
                    setContentView(R.layout.activity_sands);
                    }
                else if (hillstation.isChecked()) {
                        Intent Intentm = new Intent(getApplicationContext(), mountains.class); // <----- START "HIll STATIONS" ACTIVITY
                        startActivityForResult(Intentm, 0);
                    }
                else if (wildlife.isChecked()) {
                        Intent Intentw = new Intent(getApplicationContext(), forests.class); // <----- START "WILDLIFE" ACTIVITY
                        startActivityForResult(Intentw, 0);
                    }
                else if (historical.isChecked()) {
                        Intent Intenth = new Intent(getApplicationContext(), history.class); // <----- START "HISTORICAL MONUMENTS" ACTIVITY
                        startActivityForResult(Intenth, 0);
                    }
                else if (reli.isChecked()) {
                        Intent Intentr = new Intent(getApplicationContext(), religious.class); // <----- START "RELIGIOUS LOCATIONS" ACTIVITY
                        startActivityForResult(Intentr, 0);
                    }
                }
            });
       }
}

你的问题出在你调用的onCreate(Bundle)中:

 this.finish();

在您setContentView(R.layout.activity_india)后立即告诉当前活动完成。

因此,请删除此行,一切都应按预期工作。

最新更新