저는 초보자이지만 자바를 연습하려고합니다.이 문제가 발생했습니다. 사용자가 기부금을 입력하고 버튼을 누르면 기부액이 증가합니다. 필자는 전체 코드를 작성했지만 버튼을 클릭하여 기부 수에 추가하면 앱이 다운됩니다. 필자는 선생님의 모든 가르침을 따랐습니다. 나는 액티비티에서 메소드를 생성한다. UI 빌더에서 나는 click 속성의 버튼으로 가서 그 메소드로 설정한다. 부드럽게 진행되어야하지만 버튼을 클릭 할 때마다 충돌이 발생합니다. 이것은 onClick 속성을 computeDonation으로 설정 한 필자의 활동입니다. 버튼을 클릭하면 Android Studio 앱이 계속 깨집니다.
public void computeDonation(View v){
String addedText = ((EditText)findViewById(R.id.AmountText)).getText().toString();
DonationModel donation = new DonationModel(addedText);
String answer = donation.calcDonation();
((TextView)findViewById(R.id.totalText)).setText(answer);}
이
모델이다 : 필자도이 다시 활동을 전송하면 바로 볼 수있는 숫자 형식없이 시도String textAdded;
double addedDonation;
public DonationModel(String y){
textAdded = y;
}
public String calcDonation(){
double counter = Double.parseDouble(textAdded);
addedDonation += counter;
Locale locale = new Locale("en", "CA");
NumberFormat fmt = NumberFormat.getCurrencyInstance(locale);
return fmt.format(addedDonation);
}
하지만 그렇지 않습니다. BTW for my class 나는 안드로이드 스튜디오의 이전 버전을 사용하고 있습니다. 02-15 17 : 12 :
이
는 로그 캣 인 28.797 21619-21619/ca.roumani.donations E/AndroidRuntime : FATAL EXCEPTION : 메인 공정 : ca.roumani.donations, PID : 21,619 자바. lang.IllegalStateException : android.support.v7.app.AppCompatViewInflater $ onl (AppCompatViewInflater.java:293) 의 메소드를 실행할 수 없습니다. android.view.View.performClick (View.java:5197)의 android.os.Handler.handleCallback (Handler.java:739)에 에서 android.view.View $ PerformClick.run (보기 .java : 20909) android.os.Handler.dispatchMessage (Handler.java:95)에서 android.os.Looper.loop (Looper.java:145)에서 에서 android.app.ActivityThread.main (ActivityThread.java:5942) 에서 자바 .lang.reflect.Method.invoke (네이티브 메소드) at java.lang.reflect.Method.invoke (Method.java:372) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java : 1399) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1194) 에 의해 발생 : java.lang.reflect.InvocationTargetException at java.lang.reflect.Method.invoke (기본 메소드) at java.lang.reflect.Method.in voke (Method.java:372) android.support.v7.app.AppCompatViewInflater $ DeclaredOnClickListener.onClick (AppCompatViewInflater.java:288) at android.view.View.performClick (View.java:5197) at android. view.View $ PerformClick.run (View.java:20909) (android.os.Handler.handleCallback (Handler.java:739) at android.os.Handler.dispatchMessage (Handler.java:95) at android. os.Looper.loop (Looper.java:145) android.app.ActivityThread.main (ActivityThread.java:5942) at java.lang.reflect.Method.invoke (기본 메소드) 에서 java.lang.reflect .Modod.invok e (Method.java:372) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:1399) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1194) 에 의해 발생 : java.lang.NumberFormatException : 유효하지 않은 double : "" at java.lang.StringToReal.invalidReal (StringToReal.java:63) at java.lang.StringToReal.parseDouble (StringToReal.java:267) at java .lang.Double.parseDouble (Double.java:301) at ca.roumani.donations.DonationModel.calcDonation (DonationModel.java:20) at ca.roumani.donations.DonationActivity.computeDonation (DonationActivity.java:24) at java. lang.reflect.Method.invoke (네이티브 메소드) at java.lang.reflect.Method.invoke (Method.java:372) android.support.v7.app.AppCompatViewInflater $ DeclaredOnClickListener.onClick (AppCompatViewInflater.java:288)) android.view.View.performClick (View.java:5197) at android.view.View $ PerformClick.run (View.java:20909) at android.os.Handler.handleCallback (Handler.java:739)) android.os.Handler.dispatchMessage (Handler.java:95) at android.os.Looper.loop (Looper.java:145) android.app.ActivityThread.main (ActivityThread.java:5942) at에 있습니다. java.lang.reflect.Method.invoke (네이티브 메소드) at java.lang.reflect.Method.invoke (Method.java:372) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java : 1399) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1194)
나는'NullPointerException'을 가지고있을 것입니다. logcat을 게시하십시오. –
모두 빨간색으로 표시된 logcat을 복사하여 붙여 넣습니다. – Chris
로켈 로캘 = 새로운 로케일 ("en_CA") – LSA