android: 用popupwindow显示浮动窗口
一,代码:
xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="300dp"
android:layout_height="300dp"
android:background="#ff0000"
android:orientation="vertical">
<Button
android:id="@+id/btn1"
android:text="按钮一"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<Button
android:id="@+id/btn2"
android:text="按钮二"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
java
//给按钮增加点击事件
Button button3 = findViewById(R.id.button3);
button3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//得到window
View popup_view=getLayoutInflater().inflate(R.layout.popup_view,null);
PopupWindow window=new PopupWindow(popup_view, 600, 400);
window.showAsDropDown(v);
//得到按钮
Button btn1=popup_view.findViewById(R.id.btn1);
Button btn2=popup_view.findViewById(R.id.btn2);
//按钮1点击
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.e("btnclick","按钮一被点击");
window.dismiss();
}
});
//按钮2点击
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.e("btnclick","按钮二被点击");
window.dismiss();
}
});
}
});
二,测试效果:

浙公网安备 33010602011771号