public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void leoClick(View view) {
View popupView = getLayoutInflater().inflate(R.layout.popup_view, null);
popupWindow = new PopupWindow(popupView, ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.WRAP_CONTENT, true);
// 在指定view下方多少
popupWindow.showAsDropDown(llPersonDown, 0, 370);
// 获取到Button对象,可以做相应的点击事件
Button btn1 = popupView.findViewById(R.id.btn1);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
openCamera();
}
});
Button btn2 = popupView.findViewById(R.id.btn2);
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
openAlbum();
}
});
Button btn3 = popupView.findViewById(R.id.btn3);
btn3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (popupWindow.isShowing()) {
popupWindow.dismiss();
}
}
});
}
}
activity_main
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
popup_view
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">