参考:http://blog.csdn.net/sinyu890807/article/details/51336415
Dialog
1、确定取消对话框
AlertDialog dialog = new AlertDialog.Builder(this)
.setMessage("若练此功,必先自宫")
.setTitle("警告")
.setIcon(R.mipmap.ic_launcher)
.setPositiveButton("ok", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
})
.setNegativeButton("cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
})
.create();
dialog.show();
2、单选对话框
AlertDialog.Builder builder = new Builder(this);
builder.setTitle("选择你的性别");
//定义单选选项
final String[] items = new String[]{"男", "女", "其他"};
//-1表示没有默认选择
//点击侦听的导包要注意别导错
builder.setSingleChoiceItems(items, -1, new OnClickListener() {
//which表示点击的是哪一个选项
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "您选择了" + items[which], 0).show();
//对话框消失
dialog.dismiss();
}
});
builder.show();
3、多选对话框
AlertDialog.Builder builder = new Builder(this);
builder.setTitle("请选择你认为最帅的人");
//定义多选的选项,因为可以多选,所以需要一个boolean数组来记录哪些选项被选了
final String[] items = new String[]{
"赵帅哥",
"赵师哥",
"赵老师",
"侃哥"
};
//true表示对应位置的选项被选了
final boolean[] checkedItems = new boolean[]{
true,
false,
false,
false,
};
builder.setMultiChoiceItems(items, checkedItems, new OnMultiChoiceClickListener() {
//点击某个选项,如果该选项之前没被选择,那么此时isChecked的值为true
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
checkedItems[which] = isChecked;
}
});
builder.setPositiveButton("确定", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
StringBuffer sb = new StringBuffer();
for(int i = 0;i < items.length; i++){
sb.append(checkedItems[i] ? items[i] + " " : "");
}
Toast.makeText(MainActivity.this, sb.toString(), 0).show();
}
});
builder.show();
兼容旧版本
android.support.v7.app.AlertDialog
Toast
Toast.makeText(context,"hello,are you ok ?",Toast.LENGTH_LONG).show();
public class Util {
private static Toast toast;
public static void showToast(Context context,
String content) {
if (toast == null) {
toast = Toast.makeText(context,
content,
Toast.LENGTH_SHORT);
} else {
toast.setText(content);
}
toast.show();
}
}
方法 | 功能描述 |
---|---|
Toast.LENGTH_SHORT | 短时间的土司 |
Toast.LENGTH_LONG | 长时间的土司 |
makeText() | 设置土司的内容 |
show() | 弹出土司 |
setGravity() | 设置重心 |
setView() | 自定义土司布局 |
setDuration() | 持续时间 |
Snackbar
Snackbar.make(view, "data deleted",Snackbar.LENGTH_LONG)
.setAction("Undo", new View.OnClickListener(){
@Override
public void onClick(View v) {
}
})
.show();