package com.qy.day_android_07;
import android.os.Bundle;
import android.app.ActionBar.LayoutParams;
import android.app.Activity;
import android.app.AlertDialog;
import android.text.Layout;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.PopupWindow;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 1。设置监听
findViewById(R.id.button1).setOnClickListener(this);
findViewById(R.id.button2).setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.button1://AlertDialog 对话框(自定义)
//[1]创建对话框构建者
AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this);
//[2]写一个layout
View view=View.inflate(MainActivity.this, R.layout.alert_item, null);
//[3]把写完的layout设置给构建者
builder.setView(view);
//[4]创建AlertDialog
final AlertDialog dialog= builder.create();
//[5]展示
dialog.show();
//特殊属性
// 调用这个方法时,按对话框以外的地方不起作用。按返回键还起作用
dialog.setCanceledOnTouchOutside(false);
// 调用这个方法时,按对话框以外的地方不起作用。按返回键也不起作用
dialog.setCancelable(false);
//其他操作
TextView biaoti=(TextView) view.findViewById(R.id.biaoti);
biaoti.setText(“表白”);
TextView neirong=(TextView) view.findViewById(R.id.neirong);
neirong.setText(“女神做我女朋友吧!”);
Button queding=(Button) view.findViewById(R.id.queding);
queding.setText("行");
queding.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "明天下午去吃饭吧", 0).show();
//[6]取消弹窗
dialog.dismiss();
}
});
Button quxiao=(Button) view.findViewById(R.id.quxiao);
quxiao.setText("成");
quxiao.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this, "明天去看电影吧", 0).show();
}
});
break;
case R.id.button2://PopupWindow
//【1】写一个layout
View popView=View.inflate(MainActivity.this, R.layout.pop_item, null);
//【2】创建PopupWindow(参数:1.view,2宽,3高)
//LayoutParams.WRAP_CONTENT 包裹内容
final PopupWindow pop=new PopupWindow(popView, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
//【3】在某个控件的下方展示
//参数:1,控件,2 3在下方的位置
pop.showAsDropDown(v, 0, 0);
//【3】相对于屏幕的位置
// pop.showAtLocation(v, 0, 100, 100);
//控件的使用
popView.findViewById(R.id.button1).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//【4】让弹窗消失
pop.dismiss();
Toast.makeText(MainActivity.this, "我不是小姐姐,不要点我!!", 0).show();
}
});
break;
}
}
}