بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
عدم دریافت مقدار صحیح در class balls extends ImageView
سلام دوستان < من یک کنترل سفارشی در class balls extends ImageView ساختم < اما وقتی میخوام در ActivityMain
مقادیر زیر رو دریافت کنم مقدار 0 رو دریافت میکنه
balls.getWidth()
balls.getHeight()
دلیلش این هست که توی اون لحظه هنوز onLayout برای کلاس balls اجرا نشده و مقادیر مقدار دهی نشده اند <
حالا من چطور میتونم این مقدار رو از کلاس balls در ActivityMain دریافت کنم که روی گوشی های مختلف فرق میکنه؟
0
0
فک کنم اگه با Handler یه Runnable رو post کنی و اونجا این عرض و ارتفاع رو بگیری حل بشه. (11 سال پیش)
0
0
یعنی از Handler کمک بگیرم < و بعد از مدت زمانی مقدار رو دریافت کنم ؟ < این منطقی نیست < متدی < چیزی وجود نداره (11 سال پیش)
+1
0
دقت کن که گفتم post نه postDelayed ، راه های دیگه ای هم ممکنه وجود داشته باشه که من بیخبرم. (11 سال پیش)
برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال
Criss
11 سال پیش
0
0
بصورت زیر که استفاده میکنم هیچ مشکلی نداره < و جواب میده <
txtHeightAndWeight.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
txtHeightAndWeight.setText("Width : " + balls.getWidth() + " Height : " + balls.getHeight());
}
});
اما در onCreate جواب نمیده <
txtHeightAndWeight.setText("Width : " + balls.getWidth() + " Height : " + balls.getHeight());
پاسخ به سوال
Spirit
11 سال پیش
+1
0
txtHeightAndWeight.post(new Runnable() {
@Override
public void run() {
txtHeightAndWeight.setText("Width : " + balls.getWidth() + " Height : " + balls.getHeight());
}
});
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .