علت کرش در این کد چیست؟
با سلام
استاد من طبق آموزش ها پیش رفتم و فقط صفحه سوم رو که به نظر ربطی به اصل برنامه نداره ایجاد نکردم . نتیجتا در صورتیکه اطلاعات اولیه در صفحه اول وارد بشه درست عمل میکنه ولی در صورتیکه اطلاعاتی وارد نشه یا به اصطلاح userinput = null و userage = 0 باید قلمداد بشه طبق تعریفمون و من حتی یک بلاک else براش تعریف کردم ولی باز هم کرش میکنه ! علت چیه؟ ممنون.
package noorhoseini.mahdi.apps;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class SecondActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.nform2);
TextView txtcaption = (TextView) findViewById(R.id.txtcaption);
Button btnback = (Button) findViewById(R.id.btnback);
Bundle extras = getIntent().getExtras();
if (extras != null) {
String userinput = " ";
int userage = 0;
if (extras.containsKey("USER_INPUT")) {
userinput = extras.getString("USER_INPUT");
}
if (extras.containsKey("USER_AGE")) {
userage = extras.getInt("USER_AGE");
}
txtcaption.setText("UserInput is :" + userinput + " and UserAge is:" + userage);
Log.i("log", "userinput is" + userinput + " and userage is :" + userage);
btnback.setText("UserInput is :" + userinput + " and UserAge is:" + userage);
} else {
txtcaption.setText("UserInput is null" + " and UserAge is: 0");
Log.i("log", "userinput is null" + " and userage is : 0");
btnback.setText("UserInput is null " + " and UserAge is: 0");
}
Button btnexit = (Button) findViewById(R.id.btnexit);
btnexit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
SecondActivity.this.finish();
}
});
btnback.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent intent = new Intent(SecondActivity.this, FirstActivity.class);
SecondActivity.this.startActivity(intent);
SecondActivity.this.finish();
}
});
}
}
من دقیقا زمانیکه روی دکمه btngonext که در صفحه اول است و بدون اینکه هیچ داده ای در کادر های یوزراینپوت و یوزرایج وارد کنم کرش میکنه در حالیکه در بلاک else تعریف کردم که نال و صفر بنویسه.
ضمنا استاد مبحث عیب یابی مال جلسه هشتم است در حالیکه من هنوز جلسه پنجم رو هم تموم نکردم ولی در هر صورت ممنون خواستم علت دقیق کرش رو بگم حسب الامر. باتشکر
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .