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

时间:2015-02-23 21:57:16

标签: java android xml button

我终于学会了向页面添加按钮并实际导航到另一个活动“XML页面”。无论如何,我一直在尝试在同一页面中添加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);
        }
    };
}

3 个答案:

答案 0 :(得分:1)

尝试这样的事情:

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);
        }
    };     
}

答案 1 :(得分:0)

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

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

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

然后在onCreate()方法的活动中

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

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

答案 2 :(得分:0)

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);
        }
    };     
}