Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/312.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/183.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_Button_Menu - Fatal编程技术网

如何在Java/Android中创建单独的按钮功能?

如何在Java/Android中创建单独的按钮功能?,java,android,button,menu,Java,Android,Button,Menu,我有一个名为Menu的类,在该类中我想放置一个按钮菜单,如buttonA、buttonB、buttonC等等。但是,当我在手机上运行应用程序时,我不能在点击buttonA之前点击buttonB。如果我先点击buttonA,我可以选择buttonA或buttonB。问题是如何分离菜单类中的按钮,以便能够随时点击任何按钮 package com.emods.app1; import android.app.Activity; import android.content.Intent; impor

我有一个名为Menu的类,在该类中我想放置一个按钮菜单,如buttonA、buttonB、buttonC等等。但是,当我在手机上运行应用程序时,我不能在点击buttonA之前点击buttonB。如果我先点击buttonA,我可以选择buttonA或buttonB。问题是如何分离菜单类中的按钮,以便能够随时点击任何按钮

package com.emods.app1;

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

public class Menu extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

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

        public void onClick(View v) {
            // TODO Auto-generated method stub
            startActivity(new Intent ("com.emods.app1.BUTTONA"));

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

        public void onClick(View v) {
            startActivity(new Intent ("com.emods.app1.BUTTONB"));
        }
        });
        }

    });
}

}

您需要将您的btnB放在btnA的onClick事件之外。目前,您在btnA的onClick事件中有btnB声明

Button btnA = (Button) findViewById(R.id.button1);     
btnA.setOnClickListener(new View.OnClickListener() {          
    public void onClick(View v) {             
        // TODO Auto-generated method stub             
        startActivity(new Intent ("com.emods.app1.BUTTONA"));      
    }         
});   
Button btnB = (Button) findViewById(R.id.button2);     
btnB.setOnClickListener(new View.OnClickListener() {          
    public void onClick(View v) {             
        startActivity(new Intent ("com.emods.app1.BUTTONB"));         
    }      
}); 

您为第一个按钮的侦听器中的第二个按钮定义了侦听器。

嵌套问题

更改:

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

    public void onClick(View v) {
        // TODO Auto-generated method stub
        startActivity(new Intent ("com.emods.app1.BUTTONA"));

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

    public void onClick(View v) {
        startActivity(new Intent ("com.emods.app1.BUTTONB"));
    }
    });
    }

});
致:

}))


这应该可以解决问题。

只有括号错误:

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

    public void onClick(View v) {
        // TODO Auto-generated method stub
        startActivity(new Intent ("com.emods.app1.BUTTONA"));
    }
});

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

    public void onClick(View v) {
        startActivity(new Intent ("com.emods.app1.BUTTONB"));
    }

});
package com.emods.app1;

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

public class Menu extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

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

        public void onClick(View v) {
            // TODO Auto-generated method stub
            startActivity(new Intent ("com.emods.app1.BUTTONA"));
        }
    });

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

        public void onClick(View v) {
            startActivity(new Intent ("com.emods.app1.BUTTONB"));

        }
    });
}

}
您应该在IDE中激活自动格式化

package com.emods.app1;

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

public class Menu extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

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

        public void onClick(View v) {
            // TODO Auto-generated method stub
            startActivity(new Intent ("com.emods.app1.BUTTONA"));
        }
    });

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

        public void onClick(View v) {
            startActivity(new Intent ("com.emods.app1.BUTTONB"));

        }
    });
}

}