【发布时间】:2014-04-11 15:04:02
【问题描述】:
我有一个练习来制作“找数字”游戏。一个人插入一个消失的数字,另一个人插入一个数字并得到冷\暖提示,直到他找到第一个人的号码并收到一条显示该号码的消息(以防第二个人没有注意......)。
我的问题是我在 Eclipse 中没有收到错误,并且 Android 模拟器崩溃了。
这是我的 xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<EditText
android:id="@+id/txtNum"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="number" >
<requestFocus />
</EditText>
<EditText
android:id="@+id/txtFriend"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="number" />
<Button
android:id="@+id/btnFind"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
<TextView
android:id="@+id/txtTry"
android:layout_width="match_parent"
android:layout_height="40dp"
android:text="Guess the Number" />
</LinearLayout>
这是类代码(我尽量使代码尽可能简单)。
public class ActivityPesah3 extends Activity{
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_pesah3);
final EditText txtNum = (EditText)findViewById(R.id.txtNum);
final EditText txtFriend = (EditText)findViewById(R.id.txtFriend);
Button btnFind = (Button)findViewById(R.id.btnFind);
final TextView txtTry = (TextView)findViewById(R.id.txtTry);
btnFind.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
int a = Integer.valueOf(txtNum.getText().toString());
int b = Integer.valueOf(txtFriend.getText().toString());
txtNum.setVisibility(View.GONE);
if (b == a+25 || a== a-25) {
txtTry.setText("Cold");
}else if(b == a+10 || b== a-10){
txtTry.setText("Hot");
}else if(b==a){
txtTry.setText("Your friend number is: " + b);
}
}
});
}
}
【问题讨论】:
-
如果它崩溃了,请务必在堆栈跟踪中添加您的问题。
-
</LinearLayout> -
准确描述您的意思 - emulator 本身是否崩溃,或者您正在开发的 程序 是否崩溃?
-
xml 是完整的,但是由于某种原因,开头的布局没有出现在代码的灰色部分。当我插入第一个人号码并单击按钮时会出现问题。我在模拟器中收到一条不幸的消息,然后程序崩溃。
-
@user3395989 当然会崩溃。您得到 NumberFormatException 试图从尚未输入的值中获取 int 。您应该检查输入的值是否为数字。
标签: java android eclipse emulation