En Android quiero mostrar un mensaje de brindis en la parte inferior de la pantalla, probé esto:
Toast.makeText(test.this,"bbb", Toast.LENGTH_LONG).show();
No funciona, ¿cómo lo hago correctamente?
En Android quiero mostrar un mensaje de brindis en la parte inferior de la pantalla, probé esto:
Toast.makeText(test.this,"bbb", Toast.LENGTH_LONG).show();
No funciona, ¿cómo lo hago correctamente?
Respuestas:
Para mostrar el brindis en el centro de la pantalla.
Toast toast = Toast.makeText(test.this,"bbb", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
Colocación de su tostada
Aparece una notificación de brindis estándar cerca de la parte inferior de la pantalla, centrada horizontalmente. Puede cambiar esta posición con el setGravity(int, int, int)
método. Esto acepta tres parámetros: una Gravity
constante, un x-position
desplazamiento y un y-position
desplazamiento.
Por ejemplo, si decide que el brindis debe aparecer en la esquina superior izquierda, puede establecer la gravedad de esta manera:
toast.setGravity(Gravity.TOP|Gravity.LEFT, 0, 0);
Si desea mover la posición hacia la derecha, aumente el valor del segundo parámetro. Para empujarlo hacia abajo, aumente el valor del último parámetro.
Archivo de diseño para tostadas personalizadas
<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" />
Archivo .java para brindar personalizado en el evento de clic del botón
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();
}
});
}
}
Mostrar / configurar la gravedad del texto en el centro (horizontalmente) en 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()
}
El siguiente código se puede utilizar para mostrar el mensaje Toast
Toast tt = Toast.makeText(MainActivity.this,"Your text displayed here", Toast.LENGTH_LONG);
tt.setGravity(Gravity.CENTER, 0, 0);
tt.show();
El siguiente código funcionó para mí.
Toast.makeText(this, "Toast in center", Toast.LENGTH_SHORT).setGravity(Gravity.CENTER,0,0).show();