Android Java 在 1 个页面中实现 2 个按钮

Android Java implement 2 buttons in 1 page

我终于学会了如何向页面添加按钮并实际使其导航到另一个 activity "XML Page"。无论如何,我一直在尝试在同一页面中添加 2 个按钮,每个按钮都导航到不同的 XML 页面。我所做的只是复制第一个有效的按钮,然后更改按钮名称和第一个按钮有效但第二个按钮无效的所有其他内容。它显示点击但之后没有任何反应。 Back1 按钮有效。 TMode Button 解决了这个问题。 Eclipse 没有显示错误。

这是我的代码 -

import android.app.Activity;
import android.content.Intent;

import android.os.Bundle;
import android.view.View;

import android.view.View.OnClickListener;
import android.widget.Button;

public class GameMode extends Activity {

    /** Called when the activity is first created.*/
    Button btn;
    Button btn1;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_game_mode);

        btn=(Button)findViewById(R.id.Back1);

        btn.setOnClickListener(btn2Listener);
    }

    private OnClickListener btn2Listener=new OnClickListener() {
        public void onClick(View v) {
            Intent intent2=new Intent(GameMode.this,MainActivity.class);

            startActivity(intent2);
        }
    };

    public void onCreate1(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_game_mode);

        btn=(Button)findViewById(R.id.TMode);
        btn.setOnClickListener(btn3Listener);
    }

    private OnClickListener btn3Listener=new OnClickListener() {
        public void onClick(View v) {
            Intent intent3=new Intent(GameMode.this,CharacterSelect.class);

            startActivity(intent3);
        }
    };
}

尝试这样的事情:

import android.app.Activity; 
import android.content.Intent;
import android.os.Bundle; 
import android.view.View;
import android.view.View.OnClickListener; 
import android.widget.Button;

public class GameMode extends Activity {

Button btn1;
Button btn2;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_game_mode);

    btn1=(Button)findViewById(R.id.Back1);
    btn1.setOnClickListener(btn1Listener);

    btn2=(Button)findViewById(R.id.TMode);
    btn2.setOnClickListener(btn2Listener);
}


private OnClickListener btn1Listener=new OnClickListener() {
    public void onClick(View v) {
            Intent intent1=new Intent(GameMode.this,MainActivity.class);
            startActivity(intent2);
        }
    };
private OnClickListener btn2Listener=new OnClickListener() {
    public void onClick(View v) {
            Intent intent1=new Intent(GameMode.this,CharacterSelect.class);
            startActivity(intent2);
        }
    };     
}

您应该在 XML 文件中定义两个按钮

<Button
   android:id="@+id/button1"
   ... />

<Button
   android:id="@+id/button2"
   ... />

然后在 Activity 中 onCreate() 方法中

Button button1 = (Button) findViewById(R.id.button1);
button1.setOnClickListener(new OnClickListener() {
    ...
})

Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new OnClickListener() {
    ...
});
import android.app.Activity; 
import android.content.Intent;

import android.os.Bundle; 
import android.view.View;

import android.view.View.OnClickListener; 
import android.widget.Button;

public class GameMode extends Activity {

Button btn1;

Button btn2;

@Override

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_game_mode);

    btn1=(Button)findViewById(R.id.Back1);
    btn1.setOnClickListener(btn1Listener);

    btn2=(Button)findViewById(R.id.TMode);

    btn2.setOnClickListener(btn2Listener);
}


private OnClickListener btn1Listener=new OnClickListener() {

    public void onClick(View v) {

            Intent intent1=new Intent(GameMode.this,MainActivity.class);

            startActivity(intent1);
        }
    };
private OnClickListener btn2Listener=new OnClickListener() {

    public void onClick(View v) {

            Intent intent2=new Intent(GameMode.this,CharacterSelect.class);

            startActivity(intent2);
        }
    };     
}