Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.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
当我创建一个android应用程序时,当我单击一个按钮时,我如何在另一个类中访问它?_Android - Fatal编程技术网

当我创建一个android应用程序时,当我单击一个按钮时,我如何在另一个类中访问它?

当我创建一个android应用程序时,当我单击一个按钮时,我如何在另一个类中访问它?,android,Android,每当我创建一个Android应用程序。我使用switch语句访问多个按钮。当我点击一个按钮时,我如何理解另一个类中按下了哪个按钮 另一个类不是活动类。谁能告诉我正确的代码吗。?为了更好的理解 我的第一节课是 public void onClick(View v){ switch (v.getId()){ case R.id.button1 : GifView.mymethod(R.id.button1);

每当我创建一个Android应用程序。我使用switch语句访问多个按钮。当我点击一个按钮时,我如何理解另一个类中按下了哪个按钮

另一个类不是活动类。谁能告诉我正确的代码吗。?为了更好的理解

我的第一节课是

 public void onClick(View v){
    switch (v.getId()){
                case R.id.button1 :
                    GifView.mymethod(R.id.button1);
                final Dialog dialog1=new Dialog(context);
                dialog1.setContentView(R.layout.dialog);

                Button finish1= (Button) dialog1.findViewById(R.id.finish);
                finish1.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        dialog1.dismiss();
                    }
                });
                dialog1.show();
                    break;
我想把这个按钮id传给另一个类

private void init(Context context) {
    switch(?????){
        case R.id.button1:
            setFocusable(true);
            gifInputStream = getResources().openRawResource(R.drawable.hen);

            gifMovie = Movie.decodeStream(gifInputStream);
            movieWidth = gifMovie.width();
            movieHeight = gifMovie.height();
            movieDuration = gifMovie.duration();
            break;
在switch语句中我可以做什么

public static int mymethod(int id) {
    int buttonId=id;
    return buttonId;
}

您只需传递一个id即可。例如:

mybutton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            myclass.mymethod("add"); //or give your view (v)
        }
    });
然后是一些if语句

然后在另一节课上,你可以做:

void mymethod(string name){

if (name.equals("add")){
///do something here
 }
}
在android中,每个视图都有一个id,因此您可以直接比较id:

mybutton.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        myclass.mymethod(v.getId()); //or give your view (v)
    }
});
//on the other class
void mymethod(int name){

if (name == R.id.name_of_my_id){
///do something here
 }
}

在按钮上设置ID。在onClick()方法中,获取ID并将其传递给所需的类。如何将其传递给所需的类。Brother@Ankur AggarwalLearn基本java。方法和参数将让您的另一个类知道按下了什么按钮另一个类的可接受代码是什么?@user3549047谢谢大家。这个问题解决了。。。特别是@user3549047。为了你的理念。