没什么技术难点,照着api做的。
这是效果图
我们先对Toast自定义一个布局:
<?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="wrap_content" android:orientation="horizontal" > <ImageView android:src="@drawable/toast" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:textSize="25sp" /> </LinearLayout>
下面是关键代码,我把它封装成了一个类。
public class MyToast extends Toast{ public MyToast(Context context,String msg) { super(context); LayoutInflater inflater=(LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View layout=inflater.inflate(R.layout.toast, null); TextView text=(TextView) layout.findViewById(R.id.text); text.setText(msg); setGravity(Gravity.CENTER_VERTICAL, 0, 0); setDuration(LENGTH_SHORT); setView(layout); } }
原文地址:http://blog.csdn.net/lxw_xiangyu/article/details/45046151