[英]My app keeps saying “Project1 keeps Stopping” when i try to run it in the emulator. Can't figure out why
这是我的代码,当我运行它时它一直停下来,我不知道为什么,这是我在主要活动中使用的代码:
package com.example.danacarlin.project1new;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
public class Activity1 extends AppCompatActivity {
private ImageView c_img, m_img, e_img;
int count = 0;
ImageView imgView = (ImageView) findViewById(R.id.imageView4);
TextView result_tv;
TextView count_tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
onCreate(savedInstanceState);
setContentView(R.layout.activity_1);
c_img = (ImageView) findViewById(R.id.imageView);
m_img = (ImageView) findViewById(R.id.imageView2);
e_img = (ImageView) findViewById(R.id.imageView3);
result_tv = (TextView) findViewById(R.id.textResult);
count_tv = (TextView)findViewById(R.id.textCount);
MyOnClickListener myOnClickListener = new MyOnClickListener();
c_img.setOnClickListener(myOnClickListener);
m_img.setOnClickListener(myOnClickListener);
e_img.setOnClickListener(myOnClickListener);
}
}
这是MyOnClickListener类。 一切似乎都可以正确编译,但是当我运行它时,它将无法运行。
package com.example.danacarlin.project1new;
import android.view.View;
/**
* Created by DanaCarlin on 2017-03-20.
*/
class MyOnClickListener extends Activity1 implements View.OnClickListener {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
int rand = (int) (Math.random() * 3 + 1); // get a random number
//form 1 to 3
int count=0;
count++;
switch (rand) {
/*
* rand = 1 means computer is cat, * 2 represents mouse,
* 3 represents elephant
*/
case 1:
imgView.setImageResource(R.mipmap.cat); //computer
switch (v.getId()) {
case R.id.imageView: //player choose Rock
result_tv.setText("Result: " + "Tied!");
count_tv.setText("Round: " + count);
break;
case R.id.imageView2: //player choose Paper
result_tv.setText("Result: " + "Win!");
count_tv.setText("Round: " + count);
break;
case R.id.imageView3: //player choose Scissors
result_tv.setText("Result: " + "Lose!");
count_tv.setText("Round: " + count);
break;
}
break;
case 2:
imgView.setImageResource(R.mipmap.mouse); //computer choose mouse
switch (v.getId()) {
case R.id.imageView:
result_tv.setText("Result: " + "Lose!");
count_tv.setText("Round: " + count);
break;
case R.id.imageView2:
result_tv.setText("Result: " + "Tie!");
count_tv.setText("Round: " + count);
break;
case R.id.imageView3:
result_tv.setText("Result: " + "Win!");
count_tv.setText("Round: " + count);
break;
}
break;
case 3:
imgView.setImageResource(R.mipmap.elephant); //computer
switch (v.getId()) {
case R.id.imageView:
result_tv.setText("Result: " + "Win!");
count_tv.setText("Round: " + count);
break;
case R.id.imageView2:
result_tv.setText("Result: " + "Lose!");
count_tv.setText("Round: " + count);
break;
case R.id.imageView3:
result_tv.setText("Result: " + "Tie!");
count_tv.setText("Round: " + count);
break;
}
break;
}
}
}
我将imageView 1,2,3更改为Image按钮,但将imageView4保留为imageView。 但是现在它将一直持续到应用程序启动,出现在屏幕上并且当我按下按钮时它便崩溃了。 这是我的onclick代码。
包project1.csis.pace.edu.project1;
导入android.view.View;
/ ** *由DanaCarlin在2017-03-26创建。 * /
class MyOnClickListener extends MainActivity implements View.OnClickListener {
@Override
public void onClick(View v) {
form 1 to 3
choose Rock
count++;// switch (rand) { /**
//case 1:
imgView.setImageResource(R.mipmap.cat1); //computer
switch (v.getId()) {
case R.id.cat: //player choose Rock
result_tv.setText("Result: " + "Tied!");
count_tv.setText("Round: " + count);
break;
case R.id.mouse: //player choose Paper
result_tv.setText("Result: " + "Win!");
count_tv.setText("Round: " + count);
break;
case R.id.elephant: //player choose Scissors
result_tv.setText("Result: " + "Lose!");
count_tv.setText("Round: " + count);
break;
}
//case 2:
imgView.setImageResource(R.mipmap.mouse1); //computer
//choose Paper
switch (v.getId()) {
case R.id.cat:
result_tv.setText("Result: " + "Lose!");
count_tv.setText("Round: " + count);
break;
case R.id.mouse:
result_tv.setText("Result: " + "Tie!");
count_tv.setText("Round: " + count);
break;
case R.id.elephant:
result_tv.setText("Result: " + "Win!");
count_tv.setText("Round: " + count);
break;
}
//case 3:
imgView.setImageResource(R.mipmap.elephant1); //computer
switch (v.getId()) {
case R.id.cat:
result_tv.setText("Result: " + "Win!");
count_tv.setText("Round: " + count);
break;
case R.id.mouse:
result_tv.setText("Result: " + "Lose!");
count_tv.setText("Round: " + count);
break;
case R.id.elephant:
result_tv.setText("Result: " + "Tie!");
count_tv.setText("Round: " + count);
break;
}
}
}
更换
onCreate(savedInstanceState)
与
super.onCreate(savedInstanceState)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.