package com.example.popupwindow_01;
import android.app.Activity;
import android.graphics.Canvas;
import android.graphics.ColorFilter;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.v4.widget.DrawerLayout.LayoutParams;
import android.view.Gravity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.PopupWindow;
import android.widget.Toast;
import android.graphics.Canvas;
import android.graphics.ColorFilter;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.v4.widget.DrawerLayout.LayoutParams;
import android.view.Gravity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.PopupWindow;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener {
private View contentView;
private PopupWindow popupWindow;
private View parent;
private Button btn_01;
private Button btn_02;
private Button btn_03;
private Button button;
private PopupWindow popupWindow;
private View parent;
private Button btn_01;
private Button btn_02;
private Button btn_03;
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.btn_denglu);
//打气操作 查找新建的layout布局
contentView = View.inflate(this, R.layout.popu_layout, null);
//new popupWindow
popupWindow = new PopupWindow(contentView, LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
//设置
//获得焦点
popupWindow.setFocusable(true);
//点击弹窗
popupWindow.setTouchable(true);
//点击空格外弹窗
popupWindow.setOutsideTouchable(true);
//背景图点击
popupWindow.setBackgroundDrawable(new BitmapDrawable());
//创建父窗体的视图
//配合下面的登录点击事件里面的操作
parent = View.inflate(this, R.layout.activity_main, null);
//找到popUpWindown里面的控件
//减少findview使用
btn_01 = (Button) contentView.findViewById(R.id.btn_01);
btn_02 = (Button) contentView.findViewById(R.id.btn_02);
btn_03 = (Button) contentView.findViewById(R.id.btn_03);
//设置点击事件
btn_01.setOnClickListener(this);
btn_02.setOnClickListener(this);
btn_03.setOnClickListener(this);
//这是点击任何一个地方都返回
contentView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
//消失
popupWindow.dismiss();
}
});
}
//登录的点击事件
public void login(View view){
//在父窗体的某个位置进行展示....parent代表父窗体的视图,gravity表示弹出的位置/方向,x轴的偏移, y轴的偏移
popupWindow.showAtLocation(parent, Gravity.CENTER, 0, 0);
}
@Override
//相册等点击事件
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_01:
Toast.makeText(this, "拍照", 0).show();
popupWindow.dismiss();
break;
case R.id.btn_02:
Toast.makeText(this, "相册", 0).show();
popupWindow.dismiss();
break;
case R.id.btn_03:
popupWindow.dismiss();
break;
//相册等点击事件
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_01:
Toast.makeText(this, "拍照", 0).show();
popupWindow.dismiss();
break;
case R.id.btn_02:
Toast.makeText(this, "相册", 0).show();
popupWindow.dismiss();
break;
case R.id.btn_03:
popupWindow.dismiss();
break;
default:
break;
}
}
break;
}
}
}