جستجو برای:
سبد خرید 0
  • خانه
  • دوره های آموزشی
    • دوره های حضوری و آنلاین
      • دوره جامع برنامه نویسی اندروید
      • دوره جامع برنامه نویسی فلاتر
      • دوره برنامه نویسی React Native
      • دوره آموزشی برنامه نویسی iOS
    • دوره های متخصص و حرفه ای
      • دوره متخصص اندروید (پروژه محور)
      • دوره متخصص فلاتر (پروژه محور)
      • دوره آموزش امنیت در اندروید
      • دوره درآمدزایی دلاری از گوگل پلی در ایران
  • آموزش رایگان
    • دوره رایگان اندروید
    • دوره رایگان فلاتر
  • مشاورهجدید
  • دوره VIP
  • وبلاگ
ورود
گذرواژه خود را فراموش کرده اید؟
عضویت

اطلاعات شخصی شما برای پردازش سفارش شما استفاده می‌شود، و پشتیبانی از تجربه شما در این وبسایت، و برای اهداف دیگری که در سیاست حفظ حریم خصوصی توضیح داده شده است.

ارسال مجدد کد یکبار مصرف (00:60)
  • 02171058559
  • info@amooznegar.com
  • لیست علاقه مندی ها
آکادمی آموزنگار
  • خانه
  • دوره های آموزشی
    • دوره های حضوری و آنلاین
      • دوره جامع برنامه نویسی اندروید
      • دوره جامع برنامه نویسی فلاتر
      • دوره برنامه نویسی React Native
      • دوره آموزشی برنامه نویسی iOS
    • دوره های متخصص و حرفه ای
      • دوره متخصص اندروید (پروژه محور)
      • دوره متخصص فلاتر (پروژه محور)
      • دوره آموزش امنیت در اندروید
      • دوره درآمدزایی دلاری از گوگل پلی در ایران
  • آموزش رایگان
    • دوره رایگان اندروید
    • دوره رایگان فلاتر
  • مشاورهجدید
  • دوره VIP
  • وبلاگ
شروع کنید
آخرین اطلاعیه ها
لطفا برای نمایش اطلاعیه ها وارد شوید
0

وبلاگ

آکادمی آموزنگار > اخبار > برنامه نویسی > اندروید > Toast در اندروید

Toast در اندروید

1397-09-21
ارسال شده توسط آموزنگار
اندروید
Toast در اندروید

یک Toast در اندروید جهت  بازخورد ساده در مورد عملیات در یک پنجره کوچک ارائه می دهد. این فقط مقدار فضای ضروری برای پیام را پر می کند و اکتیویتی جاری قابل مشاهده و تعاملی باقی می ماند. Toast ها به طور خودکار پس از یک وقفه ناپدید می شوند.

برای مثال، با کلیک روی Send (ارسال) یک ایمیل یک پیام “Sending message…” ایجاد می کند، همانطور که در تصویر زیر نشان داده شده است:

Toast در اندروید

اگر پاسخ کاربر به پیام وضعیت مورد نیاز باشد، بجای آن یک Notification در نظر می گیریم.
اصول اولیه
ابتدا یک شیء Toast با یکی از متدهای makeText() ایجاد کنید. این متد دارای سه پارامتر است: Context برنامه، پیام متنی، و مدت زمان نمایش Toast. این یک شی Toast که به درستی مقداردهی شده است را باز می گرداند. شما می توانید اعلان (notification)، toast را همانطور که در مثال زیر نشان داده شده است، با show() نمایش دهید:

Context context = getApplicationContext();
CharSequence text = "Hello toast!";
int duration = Toast.LENGTH_SHORT;
 
Toast toast = Toast.makeText(context, text, duration);
toast.show();

این مثال همه چیزهایی را که برای اکثر اعلانات toast نیاز دارید را نشان می دهد. شما به ندرت به چیزهای دیگر نیاز دارید. با این حال، شما می توانید با استفاده از لایوت خود، به جای یک پیام متنی ساده، به راحتی موقعیت آن را متفاوت کنید. بخش های زیر توضیح می دهند که چگونه می توانید این کارها را انجام دهید.

شما همچنین می توانید روش های خود را زنجیره ای کنید و از نگه داشتن شی Toast جلوگیری کنید، مانند این:

Toast.makeText(context, text, duration).show();

موقعیت Toast

اعلان Toast استاندارد در نزدیکی پایین صفحه و در مرکز افقی ظاهر می شود. شما می توانید این موقعیت را با روش setGravity(int, int, int) تغییر دهید. این سه پارامتر را می پذیرد: یک Gravity ثابت، یک افست موقعیت x و یک افست موقعیت y .
برای مثال، اگر تصمیم بگیرید که Toast در گوشه سمت چپ بالا ظاهر شود، می توانید gravity (درجه) را مانند این تنظیم کنید:
toast.setGravity(Gravity.TOP|Gravity.LEFT, 0, 0);
اگر میخواهید موقعیت را به سمت راست بکشید، مقدار پارامتر دوم را افزایش دهید. برای پایین آوردن آن، مقدار آخرین پارامتر را افزایش دهید.
ایجاد یک Toast سفارشی
اگر پیام ساده متنی کافی نیست، می توانید یک لایوت سفارشی برای Toast خود ایجاد کنید. برای ایجاد یک لایوت سفارشی، لایوت نمایش را در XML یا کد برنامه خود تعریف کنید و شی View را به متد setView(View) منتقل کنید.
به عنوان مثال، می توانید برای لایوت Toast قابل نمایش در اسکرین شات را با XML زیر ایجاد کنید (در مسیر layout/custom_toast.xml ذخیره شده):

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 
              android:id="@+id/custom_toast_container"
 
              android:orientation="horizontal"
 
              android:layout_width="fill_parent"
 
              android:layout_height="fill_parent"
 
              android:padding="8dp"
 
              android:background="#DAAA"
 
          >
 
   <ImageView android:src="@drawable/droid"
 
               android:layout_width="wrap_content"
 
               android:layout_height="wrap_content"
 
               android:layout_marginRight="8dp"
 
         />
 
<TextView android:id="@+id/text"
 
              android:layout_width="wrap_content"
 
              android:layout_height="wrap_content"
 
              android:textColor="#FFF"
 
            />
 
</LinearLayout>

توجه داشته باشید که ID عنصر LinearLayout ، “custom_toast_container” است. شما باید از این ID و ID فایل لایوت “custom_toast” برای inflate کردن لایوت استفاده کنید، همانطور که در اینجا نشان داده شده است:

LayoutInflater inflater = getLayoutInflater();
 
View layout = inflater.inflate(R.layout.custom_toast,
 
                (ViewGroup) findViewById(R.id.custom_toast_container));
 
 
 
TextView text = (TextView) layout.findViewById(R.id.text);
 
text.setText("This is a custom toast");
 
 
 
Toast toast = new Toast(getApplicationContext());
 
toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
 
toast.setDuration(Toast.LENGTH_LONG);
 
toast.setView(layout);
 
toast.show();

ابتدا LayoutInflater را با getLayoutInflater() (یا getSystemService()) بازیابی کنید، و سپس با استفاده از inflate(int, ViewGroup)، لایوت را از XML بیرون بکشید. اولین پارامتر منبع طرح ID است و دوم نمایش ریشه است. شما می توانید از inflated layout برای پیدا کردن بیشتر اشیا، تصاویر و تعریف محتوا برای عناصر ImageView و TextView در لایوت استفاده کنید. سرانجام ایجاد یک Toast جدید با Toast(Context) و تنظیم برخی از ویژگی های Toast مانند gravity  و مدت زمان نمایش. سپس setView(View) را فراخوانی کنید و عبور آن از inflated layout . اکنون می توانید با استفاده از show() Toast را با طرح سفارشی خود نمایش دهید.
نکته: از constructor  (سازنده) عمومی برای Toast استفاده نکنید، مگر اینکه شما با استفاده از setView(View) لایوت را تعریف کنید. اگر شما لایوت سفارشی برای استفاده نداشته باشید، باید از makeText(Context, int, int) برای ایجاد Toast استفاده کنید.

Coroutine Scope در کاتلین | Coroutine Context
خواندن این مقاله
قدرت گرفته از افزونه نوشته‌های مرتبط هوشمند
قبلی گردل در اندروید چیست و چه کاربردی دارد؟
بعدی طراحی رابط کاربری در اندروید

دیدگاهتان را بنویسید لغو پاسخ

جستجو برای:
دسته‌ها
  • GoLang
  • jetpack compose
  • PHP
  • اپلیکیشن
  • امنیت
  • اندروید
  • اوپن سورس
  • برنامه نویسی
  • برنامه نویسی iOS
  • برنامه نویسی react native
  • پادکست صوتی
  • تکنولوژی
  • جاوا
  • طراح رابط کاربری
  • طراحی رابط کاربری
  • طراحی وب
  • عمومی
  • فریلنسر
  • فلاتر
  • فناوری
  • کاتلین
  • کتاب های آموزشی
  • کسب و کار
  • هوش مصنوعی
  • وردپرس
برچسب‌ها
admob coroutine dagger dagger-hilt jetpack nft rxandroid rxjava spring swift ارز دیجیتال امنیت در اندروید دارت فایربیس فوشیا مصاحبه کاری معماری mvi نقشه راه برنامه نویسی کاتلین گوگل

آکادمی آموزنگار، جایی برای آغاز یک سفر شگفت‌انگیز در دنیای برنامه‌نویسی است. آموزنگار تلاش می‌کند تا هر فردی را از هر سطحی از زندگی و تجربه به دنیای جذاب برنامه‌نویسی وارد کند.

دسترسی سریع
  • درباره ما
  • تماس با ما
  • حریم خصوصی
  • سوالات متداول
نمادها
شبکه های اجتماعی
Facebook Twitter Youtube icon--white Whatsapp

تهران، ازگل ، مجتمع تجاری الماس ایرانیان، پارک علم و فناوری فردا

021-71058559

تمامی حقوق برای آکادمی آموزنگار محفوظ می باشد

اشتراک گذاری در شبکه های اجتماعی
ارسال به ایمیل
https://amooznegar.com/?p=210
ورود
استفاده از شماره تلفن
استفاده از آدرس ایمیل
آیا هنوز عضو نشده اید؟ ثبت نام کنید
بازیابی رمز عبور
استفاده از شماره تلفن
استفاده از آدرس ایمیل
ثبت نام
استفاده از شماره تلفن
استفاده از ایمیل
قبلا عضو شده اید؟ ورود به سیستم
محافظت توسط   
مرورگر شما از HTML5 پشتیبانی نمی کند.

سوالی دارید؟ از ما بپرسید، کارشناسان ما در اسرع وقت با شما تماس می گیرند.

آموزنگار

آکادمی آموزنگار

  • 021-71058559
  • شنبه تا چهارشنبه از ساعت 8 تا 17
  • info@amooznegar.com