امیرحسین قاسمی 610 ارسال شده در 18 بهمن، ۱۳۹۹ اشتراک گذاری ارسال شده در 18 بهمن، ۱۳۹۹ سلام و عرض ادب دارم خدمت همه دوستان عزیز انجمن امروز یک قطعه کد براتون آماده کردم که میتونید باهاش یک ToastMessage کاملا سفارشی بسازید(رنگ زمینه و رنگ متن Toast رو خودتون تعیین میکنید.) خب بریم شروع کنیم ابتدا کتابخانه Javaobject رو تیک بزنید، سپس کد زیر رو بین دوتا sub کپی و سپس پیست(copy & past)کنید Sub ToastMessageShow_Custom(Message As Object, LongDuration As Boolean, BackgroundColor As Int , message_color As Int) Dim cs As CSBuilder cs.Initialize.Color(message_color).Size(20).Append(Message).PopAll Message=cs Dim ctxt As JavaObject ctxt.InitializeContext Dim duration As Int If LongDuration Then duration = 1 Else duration = 0 End If Dim toast As JavaObject toast = toast.InitializeStatic("android.widget.Toast").RunMethod("makeText", Array(ctxt, Message, duration)) Dim v As View = toast.RunMethod("getView", Null) Dim cd As ColorDrawable cd.Initialize(BackgroundColor, 20dip) v.Background = cd toast.RunMethod("show", Null) End Sub حالا هرکجا که میخواهید یک toast سفارشی نمایش بدین اینطوری تابع بالارو فراخوانی کنید: ToastMessageShow_Custom("Answercenter.ir",True,Colors.Blue,Colors.White) 1-توی پارامتر اول متن مورد نظرتون رو قرار بدید. 2-توی پارامتر دوم اگر true بزارید مدت زمان نمایش بیشتر و اگر false بزارید این مدت کم میشه. 3-پارامتر سوم رنگ زمینه toast رو میگیره که اینجا من آبی دادم. 4-پارامتر چهارم هم رنگ متن رو میگیره که من اینجا سفید دادم. نتیجه کارمون این میشه: موفق و سربلند باشید، یاعلی لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
Mthzf1384 123 ارسال شده در 20 بهمن، ۱۳۹۹ اشتراک گذاری ارسال شده در 20 بهمن، ۱۳۹۹ در در 18 بهمن 1399 در 09:14، امیرحسین قاسمی گفته است : سلام و عرض ادب دارم خدمت همه دوستان عزیز انجمن امروز یک قطعه کد براتون آماده کردم که میتونید باهاش یک ToastMessage کاملا سفارشی بسازید(رنگ زمینه و رنگ متن Toast رو خودتون تعیین میکنید.) خب بریم شروع کنیم ابتدا کتابخانه Javaobject رو تیک بزنید، سپس کد زیر رو بین دوتا sub کپی و سپس پیست(copy & past)کنید Sub ToastMessageShow_Custom(Message As Object, LongDuration As Boolean, BackgroundColor As Int , message_color As Int) Dim cs As CSBuilder cs.Initialize.Color(message_color).Size(20).Append(Message).PopAll Message=cs Dim ctxt As JavaObject ctxt.InitializeContext Dim duration As Int If LongDuration Then duration = 1 Else duration = 0 End If Dim toast As JavaObject toast = toast.InitializeStatic("android.widget.Toast").RunMethod("makeText", Array(ctxt, Message, duration)) Dim v As View = toast.RunMethod("getView", Null) Dim cd As ColorDrawable cd.Initialize(BackgroundColor, 20dip) v.Background = cd toast.RunMethod("show", Null) End Sub حالا هرکجا که میخواهید یک toast سفارشی نمایش بدین اینطوری تابع بالارو فراخوانی کنید: ToastMessageShow_Custom("Answercenter.ir",True,Colors.Blue,Colors.White) 1-توی پارامتر اول متن مورد نظرتون رو قرار بدید. 2-توی پارامتر دوم اگر true بزارید مدت زمان نمایش بیشتر و اگر false بزارید این مدت کم میشه. 3-پارامتر سوم رنگ زمینه toast رو میگیره که اینجا من آبی دادم. 4-پارامتر چهارم هم رنگ متن رو میگیره که من اینجا سفید دادم. نتیجه کارمون این میشه: موفق و سربلند باشید، یاعلی سلام دوست عزیز ببخشید من میخوام یه کم تو آموزش شما دخالت کنم تا کامل تر بشه (البته کامل هست بیشتر کامل بشه) Sub ToastMessageShow_Custom(Message As Object , LongDuration As Boolean , x As Int , y As Int , BackgroundColor As Int , message_color As Int) Dim cs As CSBuilder cs.Initialize.Color(message_color).Size(20).Append(Message).PopAll Message=cs Dim ctxt As JavaObject ctxt.InitializeContext Dim duration As Int If LongDuration Then duration = 1 Else duration = 0 End If Dim toast As JavaObject toast = toast.InitializeStatic("android.widget.Toast").RunMethod("makeText", Array(ctxt, Message, duration)) toast.RunMethod("setGravity", Array(Bit.Or(Gravity.TOP, Gravity.LEFT), x, y)) Dim v As View = toast.RunMethod("getView", Null) Dim cd As ColorDrawable cd.Initialize(BackgroundColor, 20dip) v.Background = cd toast.RunMethod("show", Null) End Sub من به کد شما یک امکان دیگه هم اضافه کردم که برنامه نویس های عزیز میتونن با استفاده از این کد اون ToastMessage رو هر جا از اکتیویتی که خواستن نمایش بدن فقط کافیه جای اون X , Y عددی رو قرار بدن که میخوان درش ToastMessage نمایش داده بشه به این صورت هم استفاده میشه: ToastMessageShow_Custom("Answercenter.ir" , True , 25%X , 90%Y , Colors.Blue , Colors.White) بازم ببخشید دخالت کردیم موفق باشید لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
امیرحسین قاسمی 610 ارسال شده در 20 بهمن، ۱۳۹۹ سازنده اشتراک گذاری ارسال شده در 20 بهمن، ۱۳۹۹ در هم اکنون، Mthzf1384 گفته است : سلام دوست عزیز ببخشید من میخوام یه کم تو آموزش شما دخالت کنم تا کامل تر بشه (البته کامل هست بیشتر کامل بشه) Sub ToastMessageShow_Custom(Message As Object , LongDuration As Boolean , x As Int , y As Int , BackgroundColor As Int , message_color As Int) Dim cs As CSBuilder cs.Initialize.Color(message_color).Size(20).Append(Message).PopAll Message=cs Dim ctxt As JavaObject ctxt.InitializeContext Dim duration As Int If LongDuration Then duration = 1 Else duration = 0 End If Dim toast As JavaObject toast = toast.InitializeStatic("android.widget.Toast").RunMethod("makeText", Array(ctxt, Message, duration)) toast.RunMethod("setGravity", Array(Bit.Or(Gravity.TOP, Gravity.LEFT), x, y)) Dim v As View = toast.RunMethod("getView", Null) Dim cd As ColorDrawable cd.Initialize(BackgroundColor, 20dip) v.Background = cd toast.RunMethod("show", Null) End Sub من به کد شما یک امکان دیگه هم اضافه کردم که برنامه نویس های عزیز میتونن با استفاده از این کد اون ToastMessage رو هر جا از اکتیویتی که خواستن نمایش بدن فقط کافیه جای اون X , Y عددی رو قرار بدن که میخوان درش ToastMessage نمایش داده بشه به این صورت هم استفاده میشه: ToastMessageShow_Custom("Answercenter.ir" , True , 25%X , 90%Y , Colors.Blue , Colors.White) بازم ببخشید دخالت کردیم موفق باشید خیلی هم عالی، ممنون از توجه شما لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.