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

مشکل در آموزش Framework اختصاصی

parsarezaei  7 سال پیش  3 سال پیش
+1 0

در بخش آموزش Framework اختصاصی
همه ی کارایی که آموزش داده شده رو انجام دادم
کدمم دقیقا همونجوری نوشتم
ولی موقع اجرا برنامه کرش میکنه
توی اکتیویتی یه تکست ویو دارم که به همون روشی که گفته شده شناساییش کردم
وقتی کدای مربوط به تکست ویو رو پاک میکنم برنامه کرش نمیکنه
برا همین احتمال میدم مشکل از بخشیه که برا کست کردن کنترل ها نوشتیم

ممنون میشم راهنماییم کنید

اینم اسکرین شات ها

 برای این سوال 6 پاسخ وجود دارد.
پاسخ به سوال 
sam  7 سال پیش
0 0

با سلام

من هم دقیقا همین مشکل را دارم

وقتی با اندروید استادیو ورژن 2.1.2 وsdk یی که استاد در سایت قرار داده اند تست میکنم برنامه بدون مشکلی اجرا میشود ,ولی زمانی که  مثل شما با اندروید استادیو ورژن 2.3.3 و sdk آپدیت شده برنامه را تست میکنم در هنگام کست کردن مث شما خطا میگیره که هنوز علت آن را نفهمیدم  .امیدوارم دوستان راهنمایی کنند

پاسخ به سوال 
مسعود فرمانی  7 سال پیش
0 0

خطایی که باهاش روبرو شدید NullPointerException هست پس مشکل شما در کست کردن کلاستون نیست

باتوجه به خطی که خطا ازش صادر شده فیلد textView متعلق به کلاس Ui مقداردهی نشده ( و شما سعی کردید روی این فیلد که به آبجکتی اشاره نمیکنه متد setText(String)  رو صدا بزنید...)

چون شما از فرموورکی که خودتون نوشتید استفاده کردید و این فیلد رو در کلاس Founder به روش Reflection مقدار دهی کردید من احتمال میدم که نام آی دی تکست ویو ( در لایه اکتیویتی)  با نام فیلد تکست ویو ( در کلاس Ui) متفاوته به همین دلیل نتونسته آی دی مورد نظر رو پیدا کنه و در نتیجه این فیلد Null مونده...

0 0
سلام. من هم مین مشکل رو دارم. حتی وقتی که کد خود استاد رو تو اندروید استادیو 2.3.3 اجرا می کنم کرش می کنه. هیچ خطایی هم نمی ده فقط موقع اجرا کرش میکنه. نمی دونم مشکل از کجاست. ممنون می شم راهنمایی کنین. (6 سال پیش)
پاسخ به سوال 
122168  6 سال پیش
0 0

سلام. من هم همین مشکل رو دارم. حتی وقتی که کد خود استاد رو تو اندروید استادیو 2.3.3 اجرا می کنم کرش می کنه. هیچ خطایی هم نمی ده فقط موقع اجرا کرش میکنه. نمی دونم مشکل از کجاست. ممنون می شم راهنمایی کنین.

پاسخ به سوال 
پژمان  6 سال پیش
0 0

خوب خدا رو شکر هممون همین مشکل رو داریم...پس نتیجه میگیریم مشکل ما از جای دیگه هست ....صد بار کد زدم اما نشد

0 0
دوستان منم الان به همین مشکل برخوردم ، تونستین این مشکل رو حل کنین ؟ (4 سال پیش)
پاسخ به سوال 
Am  4 سال پیش
0 0

دوستان منم الان به همین مشکل برخوردم ، تونستین این مشکل رو حل کنین ؟

+1 0
این فریمورک دردسر های خودشو داره نظر من اینکه که این قسمت رو به دید آموزش نگاه کن چون در عمل خوب جواب نمیده دلیلش رو تویه این لینک گفتم (4 سال پیش)
پاسخ به سوال 
Farshad  4 سال پیش
+3 0

کد زیر رو جایگزین کد استاد کنید. بعد توی کلاس Ui، تمام ویوها رو public تعریف کنید. احتمالاً مشکلتون برطرف بشه.

 {
          Class clazz = ui.getClass();
          Field[] fields = clazz.getDeclaredFields();

          for (Field field : fields) {
            field.setAccessible(true);
            String name = field.getName();
            Class type = field.getType();

            if (name.contains("$") || name.contains("serialVersionUID")) {
              continue;
            }

            int id = MActivity.this.getResources().getIdentifier(name, "id", MActivity.this.getPackageName());

            try {
              field.set(ui, activity.findViewById(id));
            } catch (IllegalAccessException e) {
              e.printStackTrace();
            }

          }
        }
+2 0
ممنون دوست عزیز مشکل حل شد..من کدی رو تغییر ندادم.فقط تو کلاس Ui فیلدها رو public کردم. (3 سال پیش)

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