سلام و عرض ادب دارم خدمت همه دوستان عزیز سایت یاهو ۹۸ YAHOO
امروز یک قطعه کد براتون آماده کردم که میتونید باهاش یک ToastMessage کاملا سفارشی بسازید(رنگ زمینه و رنگ متن Toast رو خودتون تعیین میکنید.)
خب بریم شروع کنیم
ابتدا کتابخانه Javaobject رو تیک بزنید، سپس کد زیر رو بین دوتا sub کپی و سپس پیست(copy & past)کنید.
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
حالا هرکجا که میخواهید یک toast سفارشی نمایش بدین اینطوری تابع بالارو فراخوانی کنید:
ToastMessageShow_Custom("yahoo98.ir" , True , 25%X , 90%Y , Colors.Blue , Colors.White)
۱-توی پارامتر اول متن مورد نظرتون رو قرار بدید.
۲-توی پارامتر دوم اگر true بزارید مدت زمان نمایش بیشتر و اگر false بزارید این مدت کم میشه.
۳-پارامتر سوم رنگ زمینه toast رو میگیره که اینجا من آبی دادم.
۴-پارامتر چهارم هم رنگ متن رو میگیره که من اینجا سفید دادم.
برنامه نویس های عزیز میتونن با استفاده از این کد ToastMessage رو هر جا از اکتیویتی که خواستن نمایش بدن فقط کافیه جای اون X , Y عددی رو قرار بدن که میخوان درش ToastMessage نمایش داده بشه
موفق باشید.