Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.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/199.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 java-处理主活动中多个按钮的正确方法_Java_Android - Fatal编程技术网

Android java-处理主活动中多个按钮的正确方法

Android java-处理主活动中多个按钮的正确方法,java,android,Java,Android,我一直在为我想要控制的车辆建立控制。不过,我对Java和android开发还是相当陌生的。因此,我正在寻找从UI处理多个按钮的最佳实践。到目前为止,我已经在同一屏幕上创建了两个按钮,请参见下面的代码。这是处理和创建按钮的正确方法吗 public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreat

我一直在为我想要控制的车辆建立控制。不过,我对Java和android开发还是相当陌生的。因此,我正在寻找从UI处理多个按钮的最佳实践。到目前为止,我已经在同一屏幕上创建了两个按钮,请参见下面的代码。这是处理和创建按钮的正确方法吗

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    /* Left Button */
    Button btnLeft = (Button)findViewById(R.id.btnLeft);
    btnLeft.setOnTouchListener(new OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {
            switch(event.getAction() & MotionEvent.ACTION_MASK) {
                case MotionEvent.ACTION_DOWN:   
                    // Create thread
                case MotionEvent.ACTION_UP:
                    // End Thread
                }
        return false;
        }
    });

    /* Right button */
    Button btnRight = (Button)findViewById(R.id.btnRight);
    btnRight.setOnTouchListener(new OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {
            switch(event.getAction() & MotionEvent.ACTION_MASK) {
                case MotionEvent.ACTION_DOWN:   
                    // Create thread
                case MotionEvent.ACTION_UP:
                    // End Thread
                }
        return false;
        }
    });
}
}


这段代码实际上是有效的——我也计划在switch-case语句中创建线程,我还没有弄明白这一点。任何输入都将不胜感激。

步骤1:让活动实现OnClickListener

步骤2:重写onClick方法

public class MainActivity extends Activity implements OnClickListener {

    Button btnLeft, btnRight;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        /* Left Button */
        btnLeft = (Button) findViewById(R.id.btnLeft);
        btnLeft.setOnTouchListener(this);

        /* Right button */
        btnRight = (Button) findViewById(R.id.btnRight);
        btnRight.setOnTouchListener(this);
    }

    @Override
    public void onClick(View v) {
        if (v == btnleft) {
            // do stuff for button left
        }
        if (v == btnRight) {
            // do stuff for button right
        }
    }
}

步骤1:使活动实现OnClickListener

步骤2:重写onClick方法

public class MainActivity extends Activity implements OnClickListener {

    Button btnLeft, btnRight;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        /* Left Button */
        btnLeft = (Button) findViewById(R.id.btnLeft);
        btnLeft.setOnTouchListener(this);

        /* Right button */
        btnRight = (Button) findViewById(R.id.btnRight);
        btnRight.setOnTouchListener(this);
    }

    @Override
    public void onClick(View v) {
        if (v == btnleft) {
            // do stuff for button left
        }
        if (v == btnRight) {
            // do stuff for button right
        }
    }
}

步骤1:使活动实现OnClickListener

步骤2:重写onClick方法

public class MainActivity extends Activity implements OnClickListener {

    Button btnLeft, btnRight;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        /* Left Button */
        btnLeft = (Button) findViewById(R.id.btnLeft);
        btnLeft.setOnTouchListener(this);

        /* Right button */
        btnRight = (Button) findViewById(R.id.btnRight);
        btnRight.setOnTouchListener(this);
    }

    @Override
    public void onClick(View v) {
        if (v == btnleft) {
            // do stuff for button left
        }
        if (v == btnRight) {
            // do stuff for button right
        }
    }
}

步骤1:使活动实现OnClickListener

步骤2:重写onClick方法

public class MainActivity extends Activity implements OnClickListener {

    Button btnLeft, btnRight;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        /* Left Button */
        btnLeft = (Button) findViewById(R.id.btnLeft);
        btnLeft.setOnTouchListener(this);

        /* Right button */
        btnRight = (Button) findViewById(R.id.btnRight);
        btnRight.setOnTouchListener(this);
    }

    @Override
    public void onClick(View v) {
        if (v == btnleft) {
            // do stuff for button left
        }
        if (v == btnRight) {
            // do stuff for button right
        }
    }
}

只创建一个侦听器,并将其影响到两个按钮。我不明白你到底被困在哪里?只做一个听众,并影响你的两个按钮。我不明白你到底被困在哪里?只做一个听众,并影响你的两个按钮。我不明白你到底被困在哪里?只做一个听众,并影响你的两个按钮。我不明白你到底被困在哪里了?你需要btnLeft和btnRight作为类成员变量,而不是onCreate中的私有变量,否则你会得到构建错误你需要btnLeft和btnRight作为类成员变量,而不是onCreate中的私有变量,或者你会得到构建错误你需要btnLeft和btnRight作为类成员变量,在onCreate中不是私有变量,否则会出现生成错误您需要btnLeft和btnRight作为类成员变量,在onCreate中不是私有变量,否则会出现生成错误