Java 暂时禁用操作侦听器
我是Android Studio的新手。我有个问题。 我正在申请火柴卡。 比赛失败后,卡片在0.5秒后翻转。但这一次,你仍然可以检查其他卡。我想禁用它。我想把按钮扩展到一个类。我正在发布这两个脚本。谢谢你的帮助 这是我的卡片课Java 暂时禁用操作侦听器,java,android,android-studio,Java,Android,Android Studio,我是Android Studio的新手。我有个问题。 我正在申请火柴卡。 比赛失败后,卡片在0.5秒后翻转。但这一次,你仍然可以检查其他卡。我想禁用它。我想把按钮扩展到一个类。我正在发布这两个脚本。谢谢你的帮助 这是我的卡片课 public class kart extends Button { boolean acikMi = false; boolean cevrilebilir = true; int arkaPlanID; int onPlanID=0;
public class kart extends Button {
boolean acikMi = false;
boolean cevrilebilir = true;
int arkaPlanID;
int onPlanID=0;
Drawable on;
Drawable d;
public kart(Context context, int id) {
super(context);
setId(id);
arkaPlanID = R.drawable.arka1;
if(id%8==1)
onPlanID = R.drawable.c1;
if(id%8==2)
onPlanID = R.drawable.c2;
if(id%8==3)
onPlanID = R.drawable.c3;
if(id%8==4)
onPlanID = R.drawable.c4;
if(id%8==5)
onPlanID = R.drawable.c5;
if(id%8==6)
onPlanID = R.drawable.c6;
if(id%8==7)
onPlanID = R.drawable.c7;
if(id%8==0)
onPlanID = R.drawable.c8;
d = AppCompatDrawableManager.get().getDrawable(context,arkaPlanID);
on = AppCompatDrawableManager.get().getDrawable(context, onPlanID);
setBackground(d);
}
public void cevir(){
if (cevrilebilir){
if(!acikMi){
setBackground(on);
acikMi = true;
}
else{
setBackground(d);
acikMi=false;
}
}
}
这是我的Java代码
public class GameScreen extends AppCompatActivity {
int sonKart = 0;
int skor = 0;
int hamle;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_game_screen);
Intent i = getIntent();
final String s = i.getStringExtra("ad");
TextView tv = (TextView) findViewById(R.id.textView);
tv.setText(s);
GridLayout gr = (GridLayout) findViewById(R.id.grid);
kart kartlar[] = new kart[16];
for (int j = 1; j <= 16; j++) {
kartlar[j - 1] = new kart(this, j);
kartlar[j-1].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
hamle++;
final kart k = (kart)v;
k.cevir();
if (sonKart >0){
final kart k2 = (kart) findViewById(sonKart);
if (k2.onPlanID==k.onPlanID&&k2.getId()!=k.getId()){
k2.cevrilebilir=false;
k.cevrilebilir=false;
sonKart =0;
skor++;
TextView tv = (TextView) findViewById(R.id.textView3);
TextView tv2 = (TextView) findViewById(R.id.textView5);
tv.setText("Score: "+skor);
tv2.setText("Total moves: "+hamle);
if (skor==8){
Intent i = new Intent(GameScreen.this,scoreboard.class);
i.putExtra("ham",hamle);
i.putExtra("isim",s);
startActivity(i);
//oyun bitti
}
}
else{
Handler h = new Handler();
h.postDelayed(new Runnable() {
@Override
public void run() {
k2.cevir();
k.cevir();
}
},500);
sonKart =0;
TextView tv2 = (TextView) findViewById(R.id.textView5);
tv2.setText("Total moves: "+hamle);
}
}
else{
sonKart = k.getId();
}
}
});
}
for (int j=0;j<16;j++){
int rg =(int) (Math.random()*16);
kart k = kartlar[rg];
kartlar[rg] = kartlar [j];
kartlar[j] = k;
}
for (int j = 0; j < 16; j++)
gr.addView(kartlar[j]);
}
}
公共类游戏屏幕扩展AppCompative活动{
int-sonKart=0;
int-skor=0;
内哈姆勒;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u game\u屏幕);
Intent i=getIntent();
最终字符串s=i.getStringExtra(“ad”);
TextView tv=(TextView)findViewById(R.id.TextView);
tv.setText(s);
GridLayout gr=(GridLayout)findViewById(R.id.grid);
卡丁车[]=新卡丁车[16];
对于(int j=1;j 0){
最终卡丁车k2=(卡丁车)最终发现的卡丁车(sonKart);
if(k2.onPlanID==k.onPlanID&&k2.getId()!=k.getId()){
k2.cevrilebilir=假;
k、 cevrilebilir=假;
sonKart=0;
skor++;
TextView tv=(TextView)findViewById(R.id.textView3);
TextView tv2=(TextView)findViewById(R.id.textView5);
tv.setText(“分数:+skor”);
tv2.setText(“总动作:+hamle”);
如果(skor==8){
意图i=新意图(GameScreen.this,scoreboard.class);
i、 putExtra(“火腿”,哈姆勒);
i、 putExtra(“isim”,s);
星触觉(i);
//奥云·比蒂
}
}
否则{
Handler h=新的Handler();
h、 postDelayed(新的Runnable(){
@凌驾
公开募捐{
k2.cevir();
k、 塞韦();
}
},500);
sonKart=0;
TextView tv2=(TextView)findViewById(R.id.textView5);
tv2.setText(“总动作:+hamle”);
}
}
否则{
sonKart=k.getId();
}
}
});
}
对于(int j=0;j禁用单击按钮
button.setEnabled(false);
这并不是问题的答案。若要评论或要求作者澄清,请在他们的帖子下方留下评论。-@leopal这是什么评论?对我来说,这看起来像是一个答案。是的,我知道。但我应该如何使用它。我从脚本生成了按钮。所以我不知道它们的ID。@HüseyinEraslan \\我想你可以放置标签对于每个按钮,然后按标记查找按钮