我们做安卓的童鞋应该都知道安卓Toast.makeText(context,CharSequence,duration).show()由于显示的内容和位置比较固定,所以在我们自己的项目中经常需要做修改,以下是本人总结的修改Toast显示位置和内容,以显示文本和图片为例
xml布局界面:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginTop="35dp"
android:onClick="show"
android:text="弹" />
</RelativeLayout>
java代码
public void show(View v){
//1、构建Toast对象
Toast toast = new Toast(this);
/*显示文本
TextView tv = new TextView(this);
tv.setText("哈哈哈");
tv.setTextColor(Color.RED);
tv.setBackgroundColor(Color.BLUE);*/
//2、构建Toast显示图片
ImageView tv = new ImageView(this);
tv.setImageResource(R.drawable.lss);
//3、设置显示出来的view
toast.setView(tv);
//4、设置Toast显示位置 (屏幕顶端中间位置开始算)
toast.setGravity(Gravity.TOP,100,350);
//5、设置时常
toast.setDuration(0);
//6、显示
toast.show();
}
效果图