码迷,mamicode.com
首页 > 移动开发 > 详细

Android开发系列(二十六):使用PopupWindow创建对话框风格的窗口

时间:2014-10-30 15:16:51      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:对话框   界面   

创建对话框风格的窗口很简单,需要步骤:

1、调用PopupWindow的构造器创建PopupWindow对象

2、调用PopupWindow的showAsDropDown(View v)作为v组件的下拉组件显示出来:或调用PopupWindow的showAtLocation()方法将PopupWindow在指定位置显示出来。


首先,我们创建一个Android项目,然后编辑main.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical" 
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	android:gravity="center_horizontal">
<Button android:id="@+id/bn"
	android:layout_width="wrap_content"
	android:layout_height="wrap_content"
	android:text="弹出Popup窗口" 
	/>
</LinearLayout>
我们定义了一个按钮,用来打开Popup对话框风格的窗口


然后,我们在主界面编辑java代码:PopupWindowTest.java

import android.app.Activity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.PopupWindow;


public class PopupWindowTest extends Activity
{
	@Override
	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		// 装载R.layout.popup对应的界面布局
		View root = this.getLayoutInflater().inflate(R.layout.popup, null);
		
		// 创建PopupWindow对象
		final PopupWindow popup = new PopupWindow(root, 280, 360);
		Button button = (Button) findViewById(R.id.bn);
		button.setOnClickListener(new OnClickListener()
		{
			@Override
			public void onClick(View v)
			{
				// 以下拉方式显示。
				//popup.showAsDropDown(v);
				//将PopupWindow显示在指定位置
				popup.showAtLocation(findViewById(R.id.bn), Gravity.CENTER, 20,
					20);
			}
		});
		// 获取PopupWindow中的关闭按钮。
		root.findViewById(R.id.close).setOnClickListener(
			new View.OnClickListener()
			{
				public void onClick(View v)
				{
					// 关闭PopupWindow
					popup.dismiss(); //负责销毁、隐藏PopupWindow的关键代码
				}
			});
	}
}


我们还写了一个PopupWindow对话框的xml文件:popup.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical" 
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	android:gravity="center_horizontal"
	android:background="#B1C9E4"
	>
<ImageView 
	android:layout_width="240dp"
	android:layout_height="wrap_content"
	android:src="@drawable/java"
	/>
<Button
	android:id="@+id/close"
	android:layout_width="wrap_content"
	android:layout_height="wrap_content"
	android:text="关闭" 
	/>
</LinearLayout>



我们来看一下效果:

bubuko.com,布布扣





Android开发系列(二十六):使用PopupWindow创建对话框风格的窗口

标签:对话框   界面   

原文地址:http://blog.csdn.net/u010800530/article/details/40620015

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!