我想在我的项目中设置自定义吐司消息,我想要自定义吐司,并在吐司消息中添加背景颜色和图片。 我在很多Android应用程序中看到过这种类型的toast消息。我想在我的应用程序中实现这种类型的吐司。
我点这个链接:customize toast in android
e.g。
答案 0 :(得分:1)
是的,您可以显示custom toast。
您需要做的就是:为toast创建自定义xml。
类似的东西:
<强> my_toast.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/mylayout"
android:orientation="horizontal"
android:background="@android:color/cyan">
<ImageView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:src="@drawable/my_img"
android:id="@+id/imageview">
</ImageView>
<TextView
android:textAppearance="?android:attr/textAppearanceLarge"
android:id="@+id/textView1" android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="My message"
android:textColor="@android:color/black">
</TextView>
</LinearLayout>
现在,在您的活动中,而不是默认Toast,膨胀此自定义xml。
LayoutInflater inflater = getLayoutInflater();
View view = inflater.inflate(R.layout.my_toast,
(ViewGroup) findViewById(R.id.mylayout));
Toast custToast = new Toast(this);
custToast.setView(view);
custToast.show();
希望它有所帮助。
答案 1 :(得分:1)
您可以从here获得有关Toast的最佳教程。
答案 2 :(得分:0)
你可以通过在xml
中创建toast布局来实现布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toast_layout_root"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:background="#DAAA">
<ImageView
android:id="@+id/toast_image"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginRight="10dp" />
<TextView android:id="@+id/toast_text"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:textColor="#FFF" />
</LinearLayout
充气和设置客人吐司:
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.toast_custom,
(ViewGroup) findViewById(R.id.toast_layout_root));
ImageView image = (ImageView) layout.findViewById(R.id.toast_image);
//put your image in the drawable folder
image.setImageResource(R.drawable.username_incorrect);
TextView text = (TextView) layout.findViewById(R.id.toast_text);
text.setText("The user name is incorect!");
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
&GT;