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