1 ستاره2 ستاره3 ستاره4 ستاره5 ستاره (No Ratings Yet)
Loading...

مثالی برای ساخت یک Toast سفارشی در آندروید

مثالی برای ساخت یک Toast سفارشی در آندروید
شما قادرید Toast دلخواه خودتان را در اندروید ایجاد کنید، قابلیت نمایش عکس هم در Toast وجود دارد

پس بیایید باهم یک Toast با قابلیت نمایش عکس بسازیم

فایل activity_main.xml

کامپوننتی که میخواهید در main activity نمایش داده شود را به صورت drag بکشید

فایل : activity_main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="example.kimizak.ir.customtoast.MainActivity">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hello World!"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

    </android.support.constraint.ConstraintLayout>

ایجاد فایل customtoast.xml

یک فایل xml دیگر در دایرکتوری layout ایجاد کنید . در اینجا ما ImageView و TextView را در این فایل xml داریم.

فایل : customtoast.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/custom_toast_layout"
    android:orientation="vertical"
    android:background="#F1C323"
    >

    <ImageView
        android:id="@+id/custom_toast_image"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:contentDescription="Hello world"
        android:src="@drawable/kimizak_logo"/>

    <TextView
        android:id="@+id/custom_toast_message"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:contentDescription="To"
        android:text="Kimizak custom Toast" />
</LinearLayout>

توضیحاتی در مورد بعضی قسمت های این فایل :

android:background : رنگ پس زمینه در اینجا تعریف می شود

android:src : آدرس عکس یا لوگو در پوشه drawable که فرمت آن باید png باشد

android:text : متن دلخواه شما نمایش داده می شود

کلاس Activity

حالا کد را برای نمایش Toast  سفارشی خود می نویسیم :

فایل : MainActivity.java

package example.kimizak.ir.customtoast;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //Creating the LayoutInflater instance
        LayoutInflater li = getLayoutInflater();
        //Getting the View object as defined in the customtoast.xml file
        View layout = li.inflate(R.layout.customtoast,(ViewGroup) findViewById(R.id.custom_toast_layout));
  
        //Creating the Toast object
        Toast toast = new Toast(getApplicationContext());
        toast.setDuration(Toast.LENGTH_SHORT);
        toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
        toast.setView(layout);//setting the view of custom toast layout
        toast.show();
    }
}

خروجی :

مثالی برای ساخت یک Toast سفارشی در آندروید

این مطالب را هم بخوانید  توگل باتن (ToggleButton) در آندروید

مطالب مرتبط

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *