新 activity 中的第二个 onClick 侦听器
Second onClick listener in a new activity
我刚开始学习Java。我知道一些 C++,但你知道,我只是一个新手。我有一个按钮的问题。我主要 activity 有 3 个按钮,开关发现了 onClick。通过单击其中一个按钮,您将被重定向到另一个 activity,我需要在其中创建一个新按钮。
负责 MainScreen 按钮的代码如下所示(并且有效):
public class MainScreen extends Activity implements View.OnClickListener {
Button act_2x2, act_3x3, act_4x4;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_screen);
act_2x2 = (Button) findViewById(R.id.Activity_2x2);
act_3x3 = (Button) findViewById(R.id.Activity_3x3);
act_4x4 = (Button) findViewById(R.id.Activity_4x4);
act_2x2.setOnClickListener(this);
act_3x3.setOnClickListener(this);
act_4x4.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch(view.getId())
{
case R.id.Activity_2x2:
Intent inent1 = new Intent(this, macierz_2x2.class);
startActivity(inent1);
break;
case R.id.Activity_3x3:
Intent inent2 = new Intent(this, macierz_3x3.class);
startActivity(inent2);
break;
case R.id.Activity_4x4:
Intent inent3 = new Intent(this, macierz_4x4.class);
startActivity(inent3);
break;
}
而且没关系,我可以正常输入新的activity,例如Activity_2x2。
在这里,在 2x2 class 中,我创建了一个新的 OnClickListener,当我点击它时,没有任何反应。我在这里用调试器坐了两个小时,它说我没有权限,但这是不可能的,因为它只是一个简单的按钮。我正在使用 Android Studio,只是不知道如何正确调试。
定义如下:
public class macierz_2x2 extends MainScreen implements View.OnClickListener{
Button b_2x2;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_2x2);
b_2x2 = (Button) findViewById(R.id.button_2x2);
b_2x2.setOnClickListener(this);
}
public void OnClick(View view) {
点击后会发生什么
}
我知道,这个问题出在覆盖和扩展的某个地方,但不知道为什么编译器让这个被编译。
如果有人有任何想法,我将不胜感激。
ps。我不需要回答,只要一点,错在哪里。
public class macierz_2x2 extends MainScreen implements View.OnClickListener{
MainScreen 已经实现 View.OnClickListener
。从 class 的定义中删除它。
public class macierz_2x2 extends MainScreen {
够了。您可以覆盖 macierz_2x2 activity
上的 onClick
@Override
public void onClick(View view) {
switch(view.getId()) {
R.id.button_2x2:
// do something
break;
default:
super.onClick(view);
break;
}
}
我刚开始学习Java。我知道一些 C++,但你知道,我只是一个新手。我有一个按钮的问题。我主要 activity 有 3 个按钮,开关发现了 onClick。通过单击其中一个按钮,您将被重定向到另一个 activity,我需要在其中创建一个新按钮。
负责 MainScreen 按钮的代码如下所示(并且有效):
public class MainScreen extends Activity implements View.OnClickListener {
Button act_2x2, act_3x3, act_4x4;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_screen);
act_2x2 = (Button) findViewById(R.id.Activity_2x2);
act_3x3 = (Button) findViewById(R.id.Activity_3x3);
act_4x4 = (Button) findViewById(R.id.Activity_4x4);
act_2x2.setOnClickListener(this);
act_3x3.setOnClickListener(this);
act_4x4.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch(view.getId())
{
case R.id.Activity_2x2:
Intent inent1 = new Intent(this, macierz_2x2.class);
startActivity(inent1);
break;
case R.id.Activity_3x3:
Intent inent2 = new Intent(this, macierz_3x3.class);
startActivity(inent2);
break;
case R.id.Activity_4x4:
Intent inent3 = new Intent(this, macierz_4x4.class);
startActivity(inent3);
break;
}
而且没关系,我可以正常输入新的activity,例如Activity_2x2。 在这里,在 2x2 class 中,我创建了一个新的 OnClickListener,当我点击它时,没有任何反应。我在这里用调试器坐了两个小时,它说我没有权限,但这是不可能的,因为它只是一个简单的按钮。我正在使用 Android Studio,只是不知道如何正确调试。
定义如下:
public class macierz_2x2 extends MainScreen implements View.OnClickListener{
Button b_2x2;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_2x2);
b_2x2 = (Button) findViewById(R.id.button_2x2);
b_2x2.setOnClickListener(this);
}
public void OnClick(View view) { 点击后会发生什么 }
我知道,这个问题出在覆盖和扩展的某个地方,但不知道为什么编译器让这个被编译。
如果有人有任何想法,我将不胜感激。
ps。我不需要回答,只要一点,错在哪里。
public class macierz_2x2 extends MainScreen implements View.OnClickListener{
MainScreen 已经实现 View.OnClickListener
。从 class 的定义中删除它。
public class macierz_2x2 extends MainScreen {
够了。您可以覆盖 macierz_2x2 activity
上的 onClick@Override
public void onClick(View view) {
switch(view.getId()) {
R.id.button_2x2:
// do something
break;
default:
super.onClick(view);
break;
}
}