需求:

点页面,出现弹层,弹层包含EditText,Button等,点击Button实现提交操作;

最终代码:

private PopupWindow popupWindow ;
private EditText gfName;
private View popView;
private Button addGf; protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
   //
   popView = LayoutInflater.from(getApplicationContext()).inflate(R.layout.popup_add_gf, null); gfName = (EditText)popView.findViewById(R.id.gfname);
addGf = (Button)popView.findViewById(R.id.addgf); // 创建PopupWindow对象
popupWindow = new PopupWindow(popView, 600, 800); //指定高度宽度
// popupWindow = new PopupWindow(popView,LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT, true);//充满屏幕 // 为弹出框设定自定义的布局
popupWindow.setContentView(popView);
// 使其聚焦
popupWindow.setFocusable(true);
// 设置允许在外点击消失
popupWindow.setOutsideTouchable(true);
// 这个是为了点击“返回Back”也能使其消失,并且并不会影响你的背景
popupWindow.setBackgroundDrawable(new BitmapDrawable());
addGf.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Log.i(TAG,"Button onClick");
} gfName.setText(addressName);

遇到的问题及解决:

1、操作编辑框setText 及按钮setOnClickListener 时报错,空指针。

解决:初始化元素时要指定view,如:

gfName = (EditText)popView.findViewById(R.id.gfname);

不要这样:

mapView = (MapView) findViewById(R.id.map);

接下来就是对弹层的美化了,参考:

兑现半透明的popupwindow的源码

http://www.myexception.cn/mobile/620613.html

展示PopupWindow

http://www.myexception.cn/mobile/430920.html

Android popupwindow 实现登录账户选择

http://hi.baidu.com/guoxiaoming/item/5b0b165d017efa3e33e0a9f2

android(九种对话框)的实现方式

http://www.2cto.com/kf/201204/128926.html

Android 使用 popupWindow实现弹层并操作弹层元素的更多相关文章

  1. Android 使用PopupWindow实现弹出菜单

    在本文当中,我将会与大家分享一个封装了PopupWindow实现弹出菜单的类,并说明它的实现与使用. 因对界面的需求,android原生的弹出菜单已不能满足我们的需求,自定义菜单成了我们的唯一选择,在 ...

  2. 5、 LwIP协议栈规范翻译——操作系统仿真层

    为了使lwIP可移植,操作系统特定的函数调用和数据结构不直接在协议的代码中使用.相反,当需要这样的函数调用和数据结构时,直接使用操作系统仿真层. 操作系统仿真层为操作系统服务提供统一的接口,如定时器, ...

  3. Android开发 PopupWindow弹窗调用第三方地图(百度,高德)实现导航功能

    博客描述:后台返回地点的经纬度在地图上进行描点,点击导航弹出PopupWindow进行选择地图操作,如果手机中没有安装地图,提示没有,否则传值调起地图进行导航操作 看一下实现的效果,没图说再多都白搭 ...

  4. android dialog,popupwindow,toast窗口的添加机制

    Dialog 窗口添加机制 代码示例 首先举两个例子: 例子1 在Activity中 @OnClick(R.id.but) void onClick() { Log.d("LiaBin&qu ...

  5. JavaScript DOM编程基础精华03(动态设置,层的操作,性能问题)

    代码是否需要放置到onload中  //如果js代码需要操作页面上的元素,则将该代码放到onload里面.         //因为当页面加载完毕之后页面上才会有相关的元素 //如果js代码中没有操作 ...

  6. Android系统进程间通信Binder机制在应用程序框架层的Java接口源代码分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6642463 在前面几篇文章中,我们详细介绍了A ...

  7. 用PopupWindow实现弹出菜单(弹出的菜单采用自定义布局)

         用PopupWindow实现弹出菜单是一个比较好的方式.当然我们还有一个类PopupMenu也能实现弹出菜单,但那个太过于局限了,所以不是很推荐. 这个实例的效果是这样的:点击按钮后,一个菜 ...

  8. Android:日常学习笔记(10)———使用LitePal操作数据库

    Android:日常学习笔记(10)———使用LitePal操作数据库 引入LitePal 什么是LitePal LitePal是一款开源的Android数据库框架,采用了对象关系映射(ORM)的模式 ...

  9. selenium移动div里面的滚动条,操作弹出对话框

    还是使用js来移动 首先要定位到这个元素 倾向于使用js来定位元素,输入下面的脚本,按下回车键,即可在调试页面看到对应的div块$("div.table-responsive") ...

随机推荐

  1. PL/SQL Developer 使用中文条件查询时无数据的解决方法

    PL/SQL Developer 使用中文条件查询时无数据,这是由于字符集的不一致导致的. 执行以下sql命令:select userenv('language') from dual; 显示:SIM ...

  2. centos下 forever: 让nodejs应用后台执行

    在LINUX中我们可以使用这种简单的方式让node.js在后台运行: nohup node your_app.js & forever可以让我们做得更好,并且可以跨平台的在windows和Li ...

  3. ORA-22275: invalid LOB locator specified

    性能测试20行和20000行的出现错误 20行的字符没有问题,两万行的出行问题如下 [2014-02-11 09:21:03.343665][17694862] Level 0 cicmpub.C: ...

  4. Android开发中activity切换动画的实现

    (1)我们在MainAcitvity中定义两个textview,用于点击触发切换Activity事件,下面是布局文件代码. <LinearLayout android:layout_width= ...

  5. linux系统下的shell脚本

    #!/bin/bash  说明我需要启用bin目录下的bash解释器解释脚本##将第一个文件拷贝到第二个文件,如果出错将错误输出到/dev/null 的空.if判断cp的返回值是否为1,1为成功,0为 ...

  6. 常用Oracle SQL语句(汇总版)

    Oracle数据库常用sql语句 ORACLE 常用的SQL语法和数据对象 一.数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, ...

  7. OFBiz进阶之环境搭建(eclipse)

    一. 环境准备 1. jdk1.6 下载地址:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive- ...

  8. Unity3d Shader开发(三)Pass(Fog )

    雾参数用于雾命令控制. 雾化是通过混合已生成的像素的颜色和基于到镜头的距离来确定的一个不变色来完成.雾化不会改变已经混合的像素的透明度值,只是改变RGB值. Syntax 语法 Fog { Fog C ...

  9. android开发两种退出程序方式(killProcess,System.exit)

    KillProcess: 在android中我们如果想要程序的进程结束可以这样写: android.os.Process.killProcess(android.os.Process.myPid()) ...

  10. DOS系统里,分屏显示目录的命令是什么??

    dir /sdir /pdir /w 我记得这三个都是我当年常用的命令,有分瓶的,有滚动时候每页停顿的,还有去掉详细信息的吧,, 可以放在一起使用.如dir /p/w /p是滚动时候中间停顿的,/w是 ...