Custom View
وقتی یک کلاس View را توصعه میدهد شی canvas در متد onDraw در اختیارش قرار میگیرد.
برای محاسبه ابعاد view وقتی در حالت wrap_content قرار دارد باید متد onMeasuer را پیاده سازی کنیم برای فراخوانی این متد باید تابعد requestLayout را صدا بزنیم.
وقتی یک کلاس ViewGroup را توسعه میدهد باید onLayout را پیاده سازی کند.
در ViewGroup داستان این هستش که ما توی متد onLayout ابعاد layout خودمون رو داریم و فضایی که میخوای به هر کدوم از child ها اختصاص بدیم رو باید محاسبه کنیم و متد layout رو از child ها صدا بزنیم و ابعاد رو بدیم.
اگه child توی صفحه دیده بشه متد onDraw اون صدا زدم میشه و میشه هر کاری که میخوایم رو اونجا انجام بدیم.
دقت داشته باشید که موقعیت ها در اشیای فرزند نثب به خود آنها محاسبه میشود.
+ نوشته شده در یکشنبه ۱۷ فروردین ۱۳۹۹ ساعت 1:13 توسط No One