سلام
نیاز به یک الگوریتم دارم که برام محاسبه کنه در هر صفحه از گوشی چه مقدار متن قرار می گیرد. به عنوان مثال فرض کنید یک متن دارم که پنج هزار کاراکتر است، قصد من این است که ببینم در یک صفحه حداکثر چند کاراکتر قرار خواهد گرفت. (البته با احتساب استایل و ...).
یک متد در کامپوننت Text موجود است که عملکردش به شکل زیر می باشد:
onTextLayout={({ nativeEvent: { lines } }) => console.log(lines)}
همانطور که در بالا می بینید خروجی lines سطر به سطر تمام خروجی متن را نمایش می دهد. که با دریافت baseline هر سطر می توان فهمید چه سطری آخرین سطر پنجره جاری است.
ولی مساله این است که این عملیات باید در کامپوننت Text و درون Render صورت پذیرد.
راه کاری وجود دارد که این عملیات خارج از متد render صورت پذیرد؟
من یک مشکلی که دارم این است که وقتی خروجی lines را دریافت می کنم و می خواهم این خروجی را در state قرار دهم و پردازش کنم امکان این کار بدلیل قرار گرفتن در return وجود ندارد و در return نمی توان setState انجام داد.
کسی می تونه راهنمایی کنه؟
به mahdi کمک کنید تا مشکل خودش را حل کند؛ اینطور میتوانیم با هم پیشرفت کنیم.
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟