package com.example.ui;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.os.Bundle;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener {
private Button btn1,btn2,btn3,btn4,btn5;
private Toast toast;
private Builder builder;
private AlertDialog dialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1=(Button) findViewById(R.id.button1);
btn2=(Button) findViewById(R.id.button2);
btn3=(Button) findViewById(R.id.button3);
btn4=(Button) findViewById(R.id.button4);
btn5=(Button) findViewById(R.id.button5);
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
btn3.setOnClickListener(this);
btn4.setOnClickListener(this);
btn5.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1:
Toast.makeText(this, "这是默认的Toast显示", Toast.LENGTH_SHORT).show();
break;
case R.id.button2:
toast = Toast.makeText(getApplicationContext(), "自定义位置的Toast显示",Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
break;
case R.id.button3:
toast.makeText(this, "带图片的Toast显示", Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 50, -100); //居中
LinearLayout layout=(LinearLayout) toast.getView();
ImageView image=new ImageView(getApplicationContext());
image.setImageResource(R.drawable.ic_launcher);
layout.addView(image, 0);
toast.show();
break;
case R.id.button4:
LayoutInflater inflater = getLayoutInflater();
View view =inflater.inflate(R.layout.userdefinedtoast, (ViewGroup) findViewById(R.id.toast_layout));
toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.CENTER, 0, 0);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(view);
toast.show();
break;
case R.id.button5:
LayoutInflater inflater1 = getLayoutInflater();
View view1 =inflater1.inflate(R.layout.userdefinedtoast, (ViewGroup) findViewById(R.id.toast_layout));
builder = new AlertDialog.Builder(this);
builder.setView(view1);
dialog = builder.create();
dialog.show();
break;
default:
break;
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/toast_layout"
android:orientation="vertical"
android:background="#111111"
android:layout_width="200dip"
android:layout_height="fill_parent">
<TextView
android:id="@+id/txt_Title"
android:layout_gravity="center|top"
android:text="自定义Toast"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ffffff"
android:textSize="20dip">
</TextView>
<LinearLayout
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#999999">
<ImageView
android:id="@+id/image_toast"
android:src="@drawable/ic_launcher"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10dip">
</ImageView>
<TextView
android:id="@+id/txt_context"
android:textColor="#ffffff"
android:layout_gravity="center|right"
android:text="这是自定义Toast,左边的是一幅很美的图片"
android:textSize="15dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</TextView>
</LinearLayout>
</LinearLayout>