یلدا ادامه داره... ❤️ ۴۰ درصد تخفیف همه دورهها
استفاده از تخفیفهاسلام
بنده دارم روی اپلیکیشن فلاتری کار میکنم که داخل صفحه ای باید یک ویدیو نمایش داده بشه و الان از من خواسته شده که این ویدیو قابلیت زوم کردن داشته باشه یعنی کاربر بتونه روی ویدیو زوم کنه به اصطلاح (zoom and pan) مشکلی که هست اینه که اگر از interactiveviewer استفاده کنم خود ویجت ویدیو زوم میشه و تمام کنترل های ویجت پخش ویدیو از صفحه خارج میشن و مسئله دیگه ای که هست اینه که پکیجی هم نتونستم پیدا کنم که این کار رو انجام بده تنها چیزی که پیدا کردم پکیج chewie بود که اون هم باگ داره و برای این که قابلیت زومش کار بکنه باید کنترل هاش رو ببندم که باز به مشکل میخوره سوال من اینه که پکیجی چیزی کسی میشناسه که این قابلیت رو داشته باشه یا اینکه بشه ویجت مشخصی بین کنترلر های ویدیو و خود ویدیو پلیر گذاشت ؟
ویدیو هم از اینترنت خونده میشه ولی خروجی اپ صرفا قراره اندروید باشه
البته که سعی کردم با غیر فعال کردن و فعال کردن کنترل های پکیج chewie این کار رو انجام بدم ولی ظاهرا وقتی اینیشیال میشه دیگه نمیشه تغییرش داد چه با استیت منیجر چه با set state
استفاده از InteractiveViewer با کنترل دقیقتر:
شما میتونید از InteractiveViewer استفاده کنید، اما برای این که کنترلها ویدیو از صفحه خارج نشن، باید یک لایه یا ویجت دیگری برای کنترلها قرار بدید که این کنترلها بیرون از InteractiveViewer باشن.
پیشنهاد میکنم که برای ویدیو و کنترلها از دو لایه مجزا استفاده کنید. یعنی InteractiveViewer فقط برای ویدیو باشه و کنترلها رو داخل یک Stack یا Positioned قرار بدید تا همیشه روی ویدیو باقی بمونن و مشکلی برای زوم نداشته باشید.
پکیج video_player:
پکیج video_player برای نمایش ویدیوها در Flutter یکی از بهترینهاست، و شما میتونید کنترلها رو داخل خود ویدیو با استفاده از Stack و Positioned قرار بدید.
این روش کمک میکنه که کنترلها همچنان روی ویدیو باقی بمونن و از حرکت خارج نشند.
گرفتن کنترلها از پکیج Chewie:
پکیج Chewie که شما اشاره کردید، برای استفاده از کنترلها در کنار ویدیو خوبه، ولی زمانی که میخواهید قابلیت زوم رو فعال کنید، ممکنه دچار مشکل بشید.
در این حالت میتونید کنترلها رو از پکیج Chewie بگیرید و فقط از ویجتهای اصلی ویدیو استفاده کنید. به جای استفاده از کنترلها، میتونید خودتون یک کنترل ساده برای ویدیو پیادهسازی کنید که با زوم تداخلی نداشته باشه.
تغییر وضعیت در Chewie:
برای مشکل "غیر فعال کردن و فعال کردن کنترلها"، بهتره از setState برای تغییر وضعیت کنترلها استفاده کنید. ممکنه این مشکل به دلیل نحوه مدیریت وضعیت در Chewie یا ساختار پروژه شما باشه. بهطور مثال، میتونید وقتی InteractiveViewer فعال میشه، کنترلها رو بهصورت دستی از حالت hidden به visible تغییر بدید.
در نهایت، پیشنهاد میکنم که یک طراحی مبتنی بر لایهها (مثل استفاده از Stack) انجام بدید تا هم زوم و پان کردن ویدیو با InteractiveViewer کار کنه و هم کنترلها همیشه روی ویدیو قرار داشته باشن.
بله اما ساخت دستی کنترل ها کار تمیزی در نمیاد به خصوص اینکه برای مدیریت صدا در اون صورت باید پکیج اضافی ایمپورت کنم و همینطور استک و پوزیشن برای صفحه گزینه های مناسبی نیستن چون قرار گیریشون داخل سایز های مختلف موبایل مشکل ایجاد میکنه (ضمن اینکه خود پکیج chewie این گزینه رو در اختیار گذاشته که بشه روی خود ویدیو کنترل های کاستوم ست کنیم صرفا میخواستم وقت اضافه ازم نگیره)
با تشکر
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟