package com.example.sudoku;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
public class Sudoku extends Activity implements OnClickListener{
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Set up click listeners for all the buttons
View continueButton=findViewById(R.id.continue_button);
continueButton.setOnClickListener(this);
View newButton=findViewById(R.id.new_button);
newButton.setOnClickListener(this);
View aboutButton=findViewById(R.id.about_button);
aboutButton.setOnClickListener(Sudoku.this);
View exitButton=findViewById(R.id.exit_button);
exitButton.setOnClickListener(Sudoku.this);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.about_button:
Intent i=new Intent(Sudoku.this, About.class);
startActivity(i);
break;
case R.id.exit_button:
finish();
break;
}
}
}
当我点击视图按钮时没有任何反应 我知道视图按钮根本没有与on click方法相关联,因为当我将click方法定义到x m l文件时它工作正常,任何帮助请我是android编程新手,thnx
答案 0 :(得分:1)
您没有为其他2个新按钮定义监听器。继续。单击退出按钮,看看它是如何响应的。它完成了申请吗?如果是这样,你就走在了正确的轨道上。
答案 1 :(得分:1)
像这样改变onClick()方法
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.about_button:
Intent i=new Intent(Sudoku.this, About.class);
startActivity(i);
break;
case R.id.exit_button:
finish();
break;
case R.id.new_button:
newButtonClicked(); // do your work here
break;
case R.id.continue_button:
continueButtonClicked(); // do work
break;
}
}
答案 2 :(得分:0)
也为剩余按钮编写案例
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.about_button:
Intent i=new Intent(Sudoku.this, About.class);
startActivity(i);
break;
case R.id.exit_button:
finish();
break;
case R.id.continueButton:
//your function
break;
case R.id.newButton:
//your function
break;
}
}
答案 3 :(得分:0)
将View exitButton=findViewById(R.id.exit_button);
替换为
View exitButton=(View)findViewById(R.id.exit_button);
答案 4 :(得分:0)
您可能会发现将onClick属性添加到xml更容易。在要处理单击的xml元素中,添加以下行:
android:onClick = "AddViewX"
然后,在您的活动类中,您要创建一个这样的方法:
public void AddViewX(View v){
//Write Your Code Here
Intent i=new Intent(this, NextClass.class);
startActivity(i);
}
这样您就不必设置OnClickListeners,它可能会非常混乱,非常快。