utilizar usar studio libreria create como agregar android toast

usar - toast android xamarin



Cómo personalizar brindis en Android (4)

Soy nuevo en Android y trabajo en una aplicación de muestra. Quiero aprender cómo podemos personalizar el toast Android por defecto. Quiero cambiar el color, el estilo y otros atributos de Toast.

¿Podemos agregar Image in Toast también?

Leí la siguiente publicación en stackOverflow

Cómo personalizar Toast en Android? . personalizar tostadas en Android

pero ninguno de estos explica cómo agregar imágenes en Toast.


Para personalizar la forma y el color de Toast, utiliza esto.

Toast toast = Toast.makeText(getApplicationContext(), "You not Subscribe Try again", Toast.LENGTH_LONG); View vieew = toast.getView(); // vieew.setBackgroundColor(Color.parseColor("#BD8BDC")); vieew.setBackgroundResource(R.drawable.textinputborder); toast.setView(vieew); toast.show(); //This displays the toast for the specified lenght.

También use en R.drawable.textinputborder

<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="rectangle"> <solid android:color="#83BB66" /> <stroke android:width="1dp" android:color="#1B200A" /> <corners android:radius="20dp" /> </shape> </item> </selector>


Primero diseñe su interfaz personalizada ... por simplicidad, diseño una interfaz de usuario personalizada de la siguiente manera:

<?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/CustomToastLayoutRoot" android:orientation="vertical"> <ImageView android:layout_width="match_parent" android:layout_height="wrap_content" android:src="@drawable/close" android:id="@+id/imageView" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Warning !!!" android:id="@+id/textView" android:layout_gravity="bottom" /> </LinearLayout>

Toast toast = new Toast(MainActivity.this); toast.setGravity(Gravity.CENTER, 0, 0); toast.setDuration(Toast.LENGTH_LONG); LayoutInflater li = getLayoutInflater(); View toastAppear = li.inflate(R.layout.customtoast_layout, (ViewGroup) findViewById(R.id.CustomToastLayoutRoot)); toast.setView(toastAppear); toast.show();


Sí, podemos cambiar el color, el tamaño, la posición y otros atributos de Toast. También podemos agregar una imagen para tostar.

Un buen blog para este Cómo personalizar toast en Android Todos los contenidos están tomados de este blog

Puede crear un XML e inflarlo Toast.

También puedes hacerlo en tiempo de ejecución

LinearLayout layout=new LinearLayout(this); layout.setBackgroundResource(R.color.LightOrange); TextView tv=new TextView(this); // set the TextView properties like color, size etc tv.setTextColor(Color.RED); tv.setTextSize(15); tv.setGravity(Gravity.CENTER_VERTICAL); // set the text you want to show in Toast tv.setText("My Custom Toast at Bottom of Screen"); ImageView img=new ImageView(this); // give the drawble resource for the ImageView img.setImageResource(R.drawable.myimage); // add both the Views TextView and ImageView in layout layout.addView(img); layout.addView(tv); Toast toast=new Toast(this); //context is object of Context write "this" if you are an Activity // Set The layout as Toast View toast.setView(layout); // Position you toast here toast position is 50 dp from bottom you can give any integral value toast.setGravity(Gravity.BOTTOM, 0, 50); toast.show();


LayoutInflater inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View layout = inflater.inflate(R.layout.cred_menu_like_popup, (ViewGroup) activity.findViewById(R.id.like_popup_layout)); ImageView imageView = (ImageView) layout.findViewById(R.id.like_popup_iv); TextView text = (TextView) layout.findViewById(R.id.like_popup_tv); text.setText("Like"); Toast toast = new Toast(activity.getApplicationContext()); toast.setGravity(Gravity.BOTTOM, 0, 200); toast.setDuration(Toast.LENGTH_LONG); toast.setView(layout); toast.show();

Aquí está el diseño

<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/like_popup_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:background="@drawable/customshapetransparent" android:paddingTop="35dp" android:paddingBottom="25dp" android:paddingLeft="35dp" android:paddingRight="35dp" > <ImageView android:id="@+id/like_popup_iv" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="20dp" android:layout_centerHorizontal="true" /> <TextView android:id="@+id/like_popup_tv" android:layout_below="@id/like_popup_iv" android:layout_marginTop="10dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:textStyle="bold" android:textColor="@android:color/white" android:textSize="20sp" /> </RelativeLayout>

Diseño de forma personalizada es:

<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" > <solid android:color="#60000000" /> <corners android:radius="8dp" /> </shape>