FATAL EXCEPTION: main java.lang.NullPointerException
سلام.
دوستان من پروژه calculator که دارم روش کار میکنم همون اول کار برا تست که اجراش میکنم برنامه راحت نصب میشه بالا هم میاره ولی وقتی رو دکمه ای که براش setOnclickListener تعریف کردم کلیک میکنم پیغام Unfortunately, Calc has stoped روی گوشیم میاد و برنامه بسته میشه.
داخل logcat هم این ارور رو میده:
05-03 05:46:19.964 1916-1916/app.calculatormechine.oghalaei.hossein.calculatormechine E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.NullPointerException
at app.calculatormechine.oghalaei.hossein.calculatormechine.MainActivity.appendNumber(MainActivity.java:35)
at app.calculatormechine.oghalaei.hossein.calculatormechine.MainActivity$1.onClick(MainActivity.java:70)
at android.view.View.performClick(View.java:4084)
at android.view.View$PerformClick.run(View.java:16966)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4745)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
at dalvik.system.NativeStart.main(Native Method)
اگه میشه کمک کنید دارم دیوونه میشم :(




package app.calculatormechine.oghalaei.hossein.calculatormechine;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
TextView txt_result;
TextView txt_history;
Button btn_0;
Button btn_1;
Button btn_2;
Button btn_3;
Button btn_4;
Button btn_5;
Button btn_6;
Button btn_7;
Button btn_8;
Button btn_9;
Button btn_division;
Button btn_multiply;
Button btn_mines;
Button btn_plus;
Button btn_sign;
Button btn_dot;
Button btn_back;
Button btn_clear;
Button btn_clearEntity;
Button btn_equal;
public void appendNumber(int num){
txt_result.setText(txt_result.getText().toString() + num);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView txt_result = (TextView) findViewById(R.id.txt_result);
TextView txt_history = (TextView) findViewById(R.id.txt_history)
btn_0 = (Button) findViewById(R.id.btn_0);
btn_1 = (Button) findViewById(R.id.btn_1);
btn_2 = (Button) findViewById(R.id.btn_2);
btn_3 = (Button) findViewById(R.id.btn_3);
btn_4 = (Button) findViewById(R.id.btn_4);
btn_5 = (Button) findViewById(R.id.btn_5);
btn_6 = (Button) findViewById(R.id.btn_6);
btn_7 = (Button) findViewById(R.id.btn_7);
btn_8 = (Button) findViewById(R.id.btn_8);
btn_9 = (Button) findViewById(R.id.btn_9);
btn_division = (Button) findViewById(R.id.btn_division);
btn_multiply = (Button) findViewById(R.id.btn_multiply);
btn_mines = (Button) findViewById(R.id.btn_mines);
btn_plus = (Button) findViewById(R.id.btn_plus);
btn_sign = (Button) findViewById(R.id.btn_sign);
btn_dot = (Button) findViewById(R.id.btn_dot);
btn_back = (Button) findViewById(R.id.btn_back);
btn_clear = (Button) findViewById(R.id.btn_clear);
btn_clearEntity = (Button) findViewById(R.id.btn_clearEntity);
btn_equal = (Button) findViewById(R.id.btn_equal);
btn_0.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
appendNumber(0);
}
});
}
}

سلام
در متد appendnumber دارین ک مقدار به صورت String میخونید و با عددی از جنس int جمع میکنید !!!! کد زیر رو جایگزین کنید
public void appendNumber(int num){
int result = Integer.parseInt(txt_result.getText().toString());
txt_result.setText("" + result + num);
}

این دو تا رو پاک کن چون بالا تعرف شدن TextView را پاک کن تا به فیلد تبدیل بشن.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .