popwondows简单用法
来源:互联网 发布:windows ab 压力测试 编辑:程序博客网 时间:2024/06/06 00:09
- PopupWindow,可以在当前屏幕的上层的显示一个弹窗,这个弹出框是悬浮在当前activity之上的,可以指定弹窗的位置以及背景色等特性,可以使用任意布局的View作为其内容。
private void showPopupWindow(View view) { LayoutInflater mLayoutInflater = (LayoutInflater)getSystemService(LayoutInflaterService); // 一个自定义的布局,作为显示的内容 View contentView= mLayoutInflater.Inflate(R.layout.pop_window, null); // 设置按钮的点击事件 Button button = (Button) contentView.findViewById(R.id.button1); button.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(this, "button is pressed", Toast.LENGTH_SHORT).show(); } }); // 第一个参数view,后面两个指定宽和高 final PopupWindow popupWindow = new PopupWindow(contentView, LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); popupWindow.setTouchable(true); popupWindow.focusable = true;// 设置此参数获得焦点,否则无法点击 popupWindow.OutsideTouchable = true;// 设置点击窗口外边窗口消失, ColorDrawable dw = new ColorDrawable(Color.Transparent); // SetBackground必须设置,如果不设置的话,点击外部区域和Back键都无法dismiss弹框 popupWindow.SetBackgroundDrawable(dw); // 弹窗一般有两种展示方法,用showAsDropDown()和showAtLocation()两种方法实现。 popupWindow.ShowAtLocation(view, GravityFlags.Center, 0, 0); //popupWindow.showAsDropDown(view); popupWindow.Update(); view.FocusableInTouchMode = true; popupWindow.setTouchInterceptor(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { Log.i("mengdd", "onTouch : "); return false; // 这里如果返回true的话,touch事件将被拦截 // 拦截后 PopupWindow的onTouchEvent不被调用,这样点击外部区域无法dismiss } }); }
/// <summary> /// 登录按钮事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void loginbtn_Click(object sender, EventArgs e) { if(popupWindow != null && popupWindow.IsShowing) { popupWindow.dismiss(); return; } showPopupWindow(Resource.Layout.layout_main); }
0 0
- popwondows简单用法
- vi的简单用法
- ADODC简单用法
- Native2ascii简单用法介绍
- fstream的简单用法
- namespace的简单用法
- string 简单参数用法
- 枚举简单用法
- qmake的简单用法
- 时间格式化,简单用法
- zlib用法简单说明
- location用法简单介绍
- Pattern简单用法
- map 简单用法
- oracle cursor 简单用法
- AJAX的简单用法
- apt的简单用法
- java简单数据类型用法
- Android 联系人数据库介绍以及对联系人的基本操作
- uva 572 Oil Deposits
- 欢迎使用CSDN-markdown编辑器
- python 开发简单爬虫 by CL(一)
- HDU 1390 Binary Numbers
- popwondows简单用法
- poj3762 The Bonus Salary! (mcmf 区间K覆盖问题)
- Android错误:cannot locate symbol "rand" referenced by "libgameshared.so
- 二分的两种重要模型
- 二叉树---检查是否为BST
- 努力不一定会成功,不努力一定不成功!
- 初学C语言:特殊乘法(单个数字字符去减‘0’得到的就是数字)
- Java 数据类型初始值
- Java8(下)