Cara menampilkan Toast di tengah layar


89

Di Android saya ingin menampilkan pesan bersulang di bagian bawah layar, saya mencoba ini:

Toast.makeText(test.this,"bbb", Toast.LENGTH_LONG).show();

Tidak berhasil, bagaimana cara melakukannya dengan benar?


Itu tidak masuk akal bagiku. Apa yang sebenarnya ingin Anda katakan?
SudoRahul

1
format teks, pertanyaan yang benar, kode contoh apa yang Anda coba, apakah Anda pernah mencoba menggunakan mesin pencari?
deadfish

Orang yang mengedit pertanyaan ini salah mengedit ... Pertanyaannya jelas, isi pesan bukan ... harap edit lagi. Yang ingin dia tanyakan adalah "Bagaimana menampilkan pesan Toast di tengah layar", pesannya adalah "Di android saya ingin menampilkan pesan Toast di tengah layar, untuk menampilkan pesan toast di bagian bawah layar Saya mencoba Toast.makeText ini (test.this, "bbb", Toast.LENGTH_LONG) .show (); Bagaimana cara menempatkan pesan Toast di tengah layar? " Saya pikir adalah sesuatu seperti itu, bukan seperti yang diedit ...
Elsanty

Saya suka artikel ini. Itulah mengapa saya membagikannya. Contoh Toast Android - klik di sini
Athira Reddy

Jawaban:


271

Untuk menampilkan Toast di tengah layar.

Toast toast = Toast.makeText(test.this,"bbb", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();

Jika seseorang ingin menyesuaikan posisinya lebih jauh, argumen ketiga di setGravity menggunakan offset yAxis dalam piksel.
Sagar

4

Memposisikan Toast Anda

Notifikasi roti panggang standar muncul di dekat bagian bawah layar, di tengah secara horizontal. Anda dapat mengubah posisi ini dengan setGravity(int, int, int) metode ini. Ini menerima tiga parameter: Gravitykonstanta, x-positionoffset, dan y-positionoffset.

Misalnya, jika Anda memutuskan bahwa roti panggang harus muncul di pojok kiri atas, Anda dapat mengatur gravitasi seperti ini:

toast.setGravity(Gravity.TOP|Gravity.LEFT, 0, 0);

Jika Anda ingin mendorong posisi ke kanan, tingkatkan nilai parameter kedua. Untuk mendorongnya ke bawah, tingkatkan nilai parameter terakhir.


2

Di Xamarin.Android, ini menampilkan roti panggang di tengah layar:

            Toast toast = Toast.MakeText(ApplicationContext, "bbb", ToastLength.Long);
            toast.SetGravity(GravityFlags.Center, 0, 0);
            toast.Show();

2

File tata letak untuk roti panggang khusus

<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="5dp" />

<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:textColor="#000" />

File .java untuk roti panggang khusus pada acara klik tombol

public class MainActivity extends Activity {

private Button button;

public void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    button = (Button) findViewById(R.id.buttonToast);

    button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {

            // get your custom_toast.xml ayout
            LayoutInflater inflater = getLayoutInflater();

            View layout = inflater.inflate(R.layout.custom_toast,
              (ViewGroup) findViewById(R.id.custom_toast_layout_id));

            // set a dummy image
            ImageView image = (ImageView) layout.findViewById(R.id.image);
            image.setImageResource(R.drawable.ic_launcher);

            // set a message
            TextView text = (TextView) layout.findViewById(R.id.text);
            text.setText("Button is clicked!");

            // Toast...
            Toast toast = new Toast(getApplicationContext());
            toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
            toast.setDuration(Toast.LENGTH_LONG);
            toast.setView(layout);
            toast.show();
        }
    });
}

}


1
Toast toast = new Toast(context);
        toast.setGravity(Gravity.FILL_HORIZONTAL | Gravity.BOTTOM, 0, 0);
toast.show();

0

Menampilkan / Mengatur gravitasi teks di tengah (Horizontal) di koltin

fun Context.longToast(msg: String) {
    Toast.makeText(this, msg, Toast.LENGTH_LONG)
        .apply {
           view.findViewById<TextView>(android.R.id.message)?.gravity = Gravity.CENTER
        }
        .show()
}

0

Kode berikut dapat digunakan untuk menampilkan pesan Toast

Toast tt = Toast.makeText(MainActivity.this,"Your text displayed here", Toast.LENGTH_LONG);
tt.setGravity(Gravity.CENTER, 0, 0);
tt.show();

-2

Kode di bawah ini berhasil untuk saya.

Toast.makeText(this, "Toast in center", Toast.LENGTH_SHORT).setGravity(Gravity.CENTER,0,0).show();

setGravity tidak mengembalikan objek Toast. void setGravity (int gravity, int xOffset, int yOffset)
wrkwrk
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.