package com.teknolugat.puanhesabi; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.CheckBox; import android.widget.EditText; import android.widget.TextView; import java.text.DecimalFormat; public class MainActivity2 extends AppCompatActivity { @Override protected void onCreate(final Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); Button btn1,btn2; btn1=findViewById(R.id.hesapla); final EditText say1,say2,soz1,soz2,basari; say1=findViewById(R.id.say_dogru); say2=findViewById(R.id.say_yanlis); soz1=findViewById(R.id.soz_dogru); soz2=findViewById(R.id.soz_yanlis); basari=findViewById(R.id.basaripuan); final CheckBox kontrol; kontrol=findViewById(R.id.check); final TextView saysonuc,sozsonuc,easonuc; saysonuc=findViewById(R.id.soz_puan); sozsonuc=findViewById(R.id.say_puan); easonuc=findViewById(R.id.ea_puan); btn1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { System.out.print("dshfksdhfgksdhkdxfvsdfki"); double sayNet = Double.parseDouble(say1.getText().toString())-(Integer.parseInt(say2.getText().toString())/4); double sozNet = Double.parseDouble(soz1.getText().toString()) - Double.parseDouble(soz1.getText().toString()); double basarinet = Double.parseDouble((basari.getText().toString())); final double sayPuan = 105.536 + (sozNet*0.336) + (sayNet*1.575) + (basarinet*0.6); final double sozPuan = 87.747 + (sozNet*1.681) + (sayNet*0.315) + (basarinet*0.6); final double sayPuan1 = 105.536 + (sozNet*0.336) + (sayNet*1.575) + (basarinet*0.45); final double sozPuan1 = 87.747 + (sozNet*1.681) + (sayNet*0.315) + (basarinet*0.45); final double eaPuan = 96.642 + (sozNet*1.009) + (sayNet*0.945) +(basarinet*0.6); System.out.println(eaPuan); final double eaPuan1 = 96.642 + (sozNet*1.009) + (sayNet*0.945) +(basarinet*0.45); System.out.println(eaPuan1); if(kontrol.isChecked()){ saysonuc.setText(String.valueOf(sayPuan1)); sozsonuc.setText(String.valueOf(sozPuan1)); easonuc.setText(String.valueOf(eaPuan1)); }else{ saysonuc.setText(String.valueOf(sayPuan)); sozsonuc.setText(String.valueOf(sozPuan)); easonuc.setText(String.valueOf(eaPuan)); } } }); } } Android Uygulama Has been Stoped Hatası
5
●175
- 04-05-2019, 23:47:54Kimlik doğrulama veya yönetimden onay bekliyor.Arkadaşlar android de yeniyim henüz.Basit bir uygulama geliştirmeye çalışıyorum.Aşağıda kodu paylaşacağım.Yaşadığım sorunu kısaca anlatayım.Uygulama açılıyor buton var giriş 2. sayfaya geçiyor.Burda hesapta diye bir buton var butona bastığımda uygulama Has been stoped diyerek kapanıyor.
- 05-05-2019, 00:16:24Butona bastığımda Logcat kısmında çıkan kırmızı yazı bu şekilde.
2019-05-05 00:15:30.267 4800-4800/com.dgspuan.puanhesabi E/AndroidRuntime: FATAL EXCEPTION: main Process: com.dgspuan.puanhesabi, PID: 4800 java.lang.NumberFormatException: empty String at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1842) at sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110) at java.lang.Double.parseDouble(Double.java:539) at com.dgspuan.puanhesabi.MainActivity2$1.onClick(MainActivity2.java:44) at android.view.View.performClick(View.java:6294) at android.view.View$PerformClick.run(View.java:24770) at android.os.Handler.handleCallback(Handler.java:790) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6494) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
- 05-05-2019, 00:23:27Main activity nin 44.satırında, stringi parse ederken bir hata alıyormuşsunuz hocam.. Sebebi de stringin boş olmasıymış. O satıra odaklanırsanız ,ve stringleri kontrol ederseniz çözümü bulursunuz bence.. Eğer olmazsa teamviewer ile gelip bakalım beraber,sorunun hemen çözüleceğini düşünüyorum..
- 05-05-2019, 00:31:0044. satır bu şekilde
double sayNet = Double.parseDouble(say1.getText().toString())-(Integer.parseInt(say2.getText().toString())/4);
üstüne geldiğimde gözüken yazı böyle
Inspection info: Reports integer division where the result is either directly or indirectly used as a floating point number. Such division is often an error, and may result in unexpected results due to truncation in integer division.