繁体   English   中英

程序停止在android模拟器中工作

[英]program stopped working in android Emulator

我已经在Eclipse中编写了用于android的计算器程序,并且在我完成代码时没有出现错误,但是当仿真器运行时,例如,当方程式运算符单击时,输入两个数字求和时,出现此错误“不幸的是,应用程序具有停止”

我的Main.java

 package com.Tools.s01_e07; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageView; import android.widget.TextView; public class Main extends Activity { private TextView show; private ImageView n1; private ImageView n2; private ImageView n3; private ImageView n4; private ImageView n5; private ImageView n6; private ImageView n7; private ImageView n8; private ImageView n9; private ImageView n0; private ImageView nf1; private ImageView nf2; private ImageView nf3; private ImageView nf4; private ImageView nf5; private ImageView nf6; private int V1; private String F; private int V2; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); n1=(ImageView) findViewById(R.id.n1); n2=(ImageView) findViewById(R.id.n2); n3=(ImageView) findViewById(R.id.n3); n4=(ImageView) findViewById(R.id.n4); n5=(ImageView) findViewById(R.id.n5); n6=(ImageView) findViewById(R.id.n6); n7=(ImageView) findViewById(R.id.n7); n8=(ImageView) findViewById(R.id.n8); n9=(ImageView) findViewById(R.id.n9); n0=(ImageView) findViewById(R.id.n0); nf1=(ImageView) findViewById(R.id.nf1); nf2=(ImageView) findViewById(R.id.nf2); nf3=(ImageView) findViewById(R.id.nf3); nf4=(ImageView) findViewById(R.id.nf4); nf5=(ImageView) findViewById(R.id.nf5); nf6=(ImageView) findViewById(R.id.nf6); show=(TextView) findViewById(R.id.show); n1.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"1"); } }); n2.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"2"); } }); n3.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"3"); } }); n4.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"4"); } }); n5.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"5"); } }); n6.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"6"); } }); n7.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"7"); } }); n8.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"8"); } }); n9.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"9"); } }); n0.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { show.setText(show.getText()+"0"); } }); nf1.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { V1=Integer.parseInt(show.getText().toString()); F="+"; show.setText(" "); } }); nf2.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { V1=Integer.parseInt(show.getText().toString()); F="-"; show.setText(" "); } }); nf3.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { V1=Integer.parseInt(show.getText().toString()); F="*"; show.setText(" "); } }); nf4.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { V1=Integer.parseInt(show.getText().toString()); F="/"; show.setText(" "); } }); nf5.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { if(F!="" && show.getText().toString()!="") { int res=0; V2=Integer.parseInt(show.getText().toString()); if(F=="+"){ res=V1+V2; } if(F=="-"){ res=V1-V2; } if(F=="*"){ res=V1*V2; } if(F=="/"){ res=V1/V2; } show.setText(res+""); } } }); nf6.setOnClickListener(new OnClickListener() { public void onClick(View arg0) { } }); } } 

main.xml中

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.Tools.s01_e07.Main" > <ImageView android:id="@+id/n1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_marginBottom="116dp" android:layout_marginLeft="64dp" android:src="@drawable/a01" /> <ImageView android:id="@+id/n2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/n1" android:layout_toRightOf="@+id/n1" android:src="@drawable/a02" /> <ImageView android:id="@+id/n3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/n2" android:layout_toRightOf="@+id/n2" android:src="@drawable/a03" /> <ImageView android:id="@+id/n4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/n1" android:layout_alignLeft="@+id/n1" android:src="@drawable/a04" /> <ImageView android:id="@+id/n5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/n1" android:layout_toRightOf="@+id/n1" android:src="@drawable/a05" /> <ImageView android:id="@+id/n6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/n3" android:layout_alignTop="@+id/n5" android:src="@drawable/a06" /> <ImageView android:id="@+id/n7" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/n4" android:layout_alignLeft="@+id/n4" android:src="@drawable/a07" /> <ImageView android:id="@+id/n8" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/n7" android:layout_toRightOf="@+id/n7" android:src="@drawable/a08" /> <ImageView android:id="@+id/n9" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/n6" android:layout_alignTop="@+id/n8" android:src="@drawable/a09" /> <ImageView android:id="@+id/n0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/n2" android:layout_toRightOf="@+id/n1" android:src="@drawable/a00" /> <ImageView android:id="@+id/nf5" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/n2" android:layout_toRightOf="@+id/n2" android:src="@drawable/mosavi" /> <ImageView android:id="@+id/nf1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/n9" android:layout_toRightOf="@+id/n9" android:src="@drawable/sum" /> <ImageView android:id="@+id/nf2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/nf1" android:layout_below="@+id/nf1" android:src="@drawable/tafrigh" /> <ImageView android:id="@+id/nf3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/nf2" android:layout_toRightOf="@+id/n3" android:src="@drawable/zarb" /> <ImageView android:id="@+id/nf4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignRight="@+id/nf3" android:layout_below="@+id/nf3" android:src="@drawable/taghsim" /> <ImageView android:id="@+id/nf6" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/n1" android:layout_alignTop="@+id/nf4" android:src="@drawable/p2" /> <TextView android:id="@+id/show" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/n7" android:layout_alignLeft="@+id/n7" android:layout_alignRight="@+id/nf1" android:layout_marginBottom="40dp" android:textAppearance="?android:attr/textAppearanceMedium" android:textSize="22sp" /> </RelativeLayout> 

这是我的LogCat

 03-20 14:59:37.211: D/dalvikvm(1225): GC_CONCURRENT freed 69K, 5% free 6286K/6616K, paused 3ms+2ms, total 26ms 03-20 14:59:37.283: D/libEGL(1225): loaded /system/lib/egl/libEGL_genymotion.so 03-20 14:59:37.287: D/(1225): HostConnection::get() New Host Connection established 0xb78f8410, tid 1225 03-20 14:59:37.299: D/libEGL(1225): loaded /system/lib/egl/libGLESv1_CM_genymotion.so 03-20 14:59:37.299: D/libEGL(1225): loaded /system/lib/egl/libGLESv2_genymotion.so 03-20 14:59:37.355: W/EGL_genymotion(1225): eglSurfaceAttrib not implemented 03-20 14:59:37.367: D/OpenGLRenderer(1225): Enabling debug mode 0 03-20 15:00:01.239: D/AndroidRuntime(1225): Shutting down VM 03-20 15:00:01.239: W/dalvikvm(1225): threadid=1: thread exiting with uncaught exception (group=0xa613f908) 03-20 15:00:01.239: E/AndroidRuntime(1225): FATAL EXCEPTION: main 03-20 15:00:01.239: E/AndroidRuntime(1225): java.lang.NumberFormatException: Invalid int: " 2" 03-20 15:00:01.239: E/AndroidRuntime(1225): at java.lang.Integer.invalidInt(Integer.java:138) 03-20 15:00:01.239: E/AndroidRuntime(1225): at java.lang.Integer.parse(Integer.java:375) 03-20 15:00:01.239: E/AndroidRuntime(1225): at java.lang.Integer.parseInt(Integer.java:366) 03-20 15:00:01.239: E/AndroidRuntime(1225): at java.lang.Integer.parseInt(Integer.java:332) 03-20 15:00:01.239: E/AndroidRuntime(1225): at com.Tools.s01_e07.Main$15.onClick(Main.java:173) 03-20 15:00:01.239: E/AndroidRuntime(1225): at android.view.View.performClick(View.java:4204) 03-20 15:00:01.239: E/AndroidRuntime(1225): at android.view.View$PerformClick.run(View.java:17355) 03-20 15:00:01.239: E/AndroidRuntime(1225): at android.os.Handler.handleCallback(Handler.java:725) 03-20 15:00:01.239: E/AndroidRuntime(1225): at android.os.Handler.dispatchMessage(Handler.java:92) 03-20 15:00:01.239: E/AndroidRuntime(1225): at android.os.Looper.loop(Looper.java:137) 03-20 15:00:01.239: E/AndroidRuntime(1225): at android.app.ActivityThread.main(ActivityThread.java:5041) 03-20 15:00:01.239: E/AndroidRuntime(1225): at java.lang.reflect.Method.invokeNative(Native Method) 03-20 15:00:01.239: E/AndroidRuntime(1225): at java.lang.reflect.Method.invoke(Method.java:511) 03-20 15:00:01.239: E/AndroidRuntime(1225): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 03-20 15:00:01.239: E/AndroidRuntime(1225): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 03-20 15:00:01.239: E/AndroidRuntime(1225): at dalvik.system.NativeStart.main(Native Method) 

按下运算符按钮时,将show TextView设置为“”(空格),然后将第二个运算符的数字附加到它后面。 您可能在parseInt中获得NumberFormatException。 您也不应该像通常那样信任用户单击按钮。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM