So zeigen Sie Toast in der Mitte des Bildschirms an

88

In Android möchte ich eine Toastnachricht am unteren Bildschirmrand anzeigen. Ich habe Folgendes versucht:

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

Es funktioniert nicht, wie mache ich es richtig?

Tedris
quelle
Es ergab für mich keinen Sinn. Was genau versuchst du zu sagen?
SudoRahul
1
Text formatieren, richtige Frage, Beispielcode Was haben Sie versucht, haben Sie sogar versucht, eine Suchmaschine zu verwenden?
Deadfish
Personen, die diese Frage bearbeiten, bearbeiten sie falsch ... Die Frage ist klar, der Nachrichtentext nicht ... Bitte bearbeiten Sie sie erneut. Was er fragen möchte ist "Wie Toast-Nachricht in der Mitte des Bildschirms anzeigen", die Nachricht ist "In Android möchte ich eine Toast-Nachricht in der Mitte des Bildschirms anzeigen, um eine Toast-Nachricht am unteren Bildschirmrand anzuzeigen Ich versuche diesen Toast.makeText (test.this, "bbb", Toast.LENGTH_LONG) .show (); Wie platziere ich eine Toast-Nachricht in der Mitte des Bildschirms? " Ich denke war so etwas, nicht wie es bearbeitet wurde ...
Elsanty
Ich liebe diesen Artikel. Deshalb teile ich es. Android Toast Beispiel - hier klicken
Athira Reddy

Antworten:

267

Anzeigen des Toasts in der Mitte des Bildschirms.

Toast toast = Toast.makeText(test.this,"bbb", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
Ajay S.
quelle
Wenn jemand die Position weiter anpassen möchte, nimmt das dritte Argument in setGravity den yAxis-Offset in Pixel auf.
Sagar
4

Positionieren Sie Ihren Toast

Eine Standard-Toastbenachrichtigung wird am unteren Rand des Bildschirms angezeigt und horizontal zentriert. Sie können diese Position mit der setGravity(int, int, int) Methode ändern . Dies akzeptiert drei Parameter: eine GravityKonstante, einen x-positionVersatz und einen y-positionVersatz.

Wenn Sie beispielsweise festlegen, dass der Toast in der oberen linken Ecke angezeigt werden soll, können Sie die Schwerkraft wie folgt einstellen:

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

Wenn Sie die Position nach rechts verschieben möchten, erhöhen Sie den Wert des zweiten Parameters. Erhöhen Sie den Wert des letzten Parameters, um ihn nach unten zu verschieben.

nzala
quelle
2

In Xamarin.Android wird Toast in der Mitte des Bildschirms angezeigt:

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

Layoutdatei für benutzerdefinierten Toast

<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" />

Java-Datei für benutzerdefinierten Toast auf das Klickereignis der Schaltfläche

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();
        }
    });
}

}}

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

Anzeigen / Einstellen der Textgravitation in der Mitte (horizontal) in 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()
}
Aklesh Singh
quelle
0

Der folgende Code kann zum Anzeigen der Toast-Nachricht verwendet werden

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

Der folgende Code hat bei mir funktioniert.

Toast.makeText(this, "Toast in center", Toast.LENGTH_SHORT).setGravity(Gravity.CENTER,0,0).show();
Pawan Dubey
quelle
setGravity gibt kein Toast-Objekt zurück. void setGravity (int Schwerkraft, int xOffset, int yOffset)
wrkwrk