博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
安卓学习UI组件-PopupWindow-弹出窗口
阅读量:6814 次
发布时间:2019-06-26

本文共 2480 字,大约阅读时间需要 8 分钟。

hot3.png

 

案例效果:

activity_main.xml

popup_window_layout.xml

MainActivity.java

 

package com.example.administrator.myapplication; import android.os.Bundle; import android.support.v7.app.ActionBarActivity; import android.util.DisplayMetrics; import android.view.Gravity; import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; import android.widget.Button; import android.widget.PopupWindow; import android.widget.Toast; //PopupWindow public class MainActivity extends ActionBarActivity {
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } //按钮事件方法 public void showWindow(View v) {
View view=getLayoutInflater().inflate(R.layout.popup_window_layout,null); //实例化创建popupWindow(窗体的视图,宽,高)对象 PopupWindow popupWindow=new PopupWindow(view, ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT); popupWindow.setBackgroundDrawable(getResources().getDrawable(android.R.drawable.btn_default)); popupWindow.setAnimationStyle(android.R.style.Animation_Translucent);//设置动画效果 popupWindow.getBackground().setAlpha(100);//设置透明度 popupWindow.setOutsideTouchable(true);//点击边上时候可以消失 popupWindow.setFocusable(true);//当前窗口获得焦点 popupWindow.setTouchable(true);//可以被触摸 popupWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);//防止虚拟软键盘被弹出菜单遮住 popupWindow.showAtLocation(v, Gravity.BOTTOM, 0, 0); //获取设备屏幕尺寸,4.1之后使用 DisplayMetrics dm=new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); int width=dm.widthPixels; int height=dm.heightPixels; //按钮事件 Button button_edit= (Button)view.findViewById(R.id.button_edit); Button button_delete= (Button)view.findViewById(R.id.button_delete); button_edit.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
Toast.makeText(MainActivity.this,"你点击的是编辑操作",Toast.LENGTH_SHORT).show(); } }); button_delete.setOnClickListener(new View.OnClickListener() {
@Override public void onClick(View v) {
Toast.makeText(MainActivity.this,"你点击的是删除操作",Toast.LENGTH_SHORT).show(); } }); } }

转载于:https://my.oschina.net/xiaofeiandroid/blog/638045

你可能感兴趣的文章
多线程编程(11) - 多线程同步之 Mutex (互斥对象)[续]
查看>>
【Java每日一题】20161214
查看>>
requireJs 模块化简陋版本
查看>>
我的友情链接
查看>>
How to upgrade vim to version 8 on CentOS 7
查看>>
xcode pod 报import 找不到 pods的支持问题解决方法之一
查看>>
nginx配置让任何文件在浏览器中显示文本text/plain
查看>>
思科路由器×××配置-- 动态 site-to-site ×××(上)
查看>>
Visual Studio统计有效代码行数
查看>>
Qt连接Oracle数据库常见问题
查看>>
45个实用的JavaScript技巧、窍门和最佳实践
查看>>
sqlserver 2005 列字符串拼接
查看>>
TSharding源码阅读-MapperShardingInitializer
查看>>
XWifiMouse早期写的一个Android鼠标App
查看>>
postgres预写式日志的内核实现详解-wal记录写入
查看>>
用面向接口编程思想看找对象
查看>>
OC文件操作习题
查看>>
Nginx常用命令
查看>>
TWaver GIS在电信中的使用
查看>>
几款程序员常用的辅助编程工具
查看>>