آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

خطا در فریمورک اختصاصی آموزش ها و بخش extractUi

پیام جلیلی  8 سال پیش  8 سال پیش
0 0

سلام خدمت دوستان عزیز، من از فریمورک اختصاصی استفاده کردم و توی ایمولیتور و تو حالت usb debugging هم مشکلی ندارم ولی وقتی خروجی apk تهیه میکنم و روی تبلت ایسوس و گوشی سامسونگ فایلم رو نصب میکنم اپ کرش میکنه و از قسمت هایی که setText شده خطا میگیره و این هم کد مربوط به اکتیویتی. ممنون میشم راهنمایی کنین متن خطا هم که میگه null هستش و نمیتونه متنو نمایش بده

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.namypayam.infra/com.namipaya.infra.MainActivity}: 
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)'
on a null object reference


public class MainActivity extends NPAppCompatActivity {

private class Ui {
ImageView img1;
TextView txtHello;
}

private Ui ui;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

ui = new Ui();

new Founder(this)
.requestFeatures()
.noActionbar()
.noTitlebar()
//.fullscreen()
.extractUi(ui)
.contentView(R.layout.activity_main)
.build();

findViewById(R.id.btnGenerate).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ui.txtHello.setText("فونت فارسی و راستچین.");
}
});
}
}
 برای این سوال 3 پاسخ وجود دارد. مشاهده پاسخ صحیح
پاسخ به سوال 
پیام جلیلی  8 سال پیش
0 0

ممنون ولی با این کد هم مشکل برطرف نشد.

0 0
اروری که در LogCat دریافت می کنید چی هست ؟ (8 سال پیش)
0 0
وقتی ui.txtHello.setText صدا زده میشه null pointer exception برمیگردونه که میگه برای null نمیتونی متد setText رو صدا بزنی در صورتی که توی کلاسم هستش و TextView هم با این نام وجود داره. تو حالت usbDebugging درسته ولی وقتی apk ساخته میشه و apk نصب میشه این مشکل بوجود میاد. (8 سال پیش)
0 0
12-10 1536.506 5907-5907/? E/AndroidRuntime: FATAL EXCEPTION: main Process: com.namipaya.infra, PID: 5907 java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference (8 سال پیش)
پاسخ به سوال 
پیام جلیلی  8 سال پیش
+1 0

 پاسخ صحیح

با تغییر دادن کلاس Ui و تبدیل کردن کلاس و فیلدها به Public مشکل حل شد. گفتم شاید مشکل دوستان هم باشه و کمکشون کنه.

public class Ui {
public TextView txtHello;
}

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