当前位置:操作系统 > 安卓/Android >>

Android入门第十篇之PopupWindow

 介绍过AlertDialog之后,接下来就介绍一下PopupWindow这种对话框。PopupWindow是阻塞对话框,只有在外部线程 或者 PopupWindow本身做退出操作才行。PopupWindow完全依赖Layout做外观,在常见的开发中,PopupWindow应该会与AlertDialog常混用。

       贴出本例中运行的结果图:

\

main.xml的源码如下:

view plaincopy to clipboardprint?
<?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" 
    > 
<Button android:id="@+id/Button01" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="PopupWindow演示"></Button> 
</LinearLayout> 
<?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"
    >
<Button android:id="@+id/Button01" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="PopupWindow演示"></Button>
</LinearLayout>
 

 

下图是PopupWindow弹出的截图,这里的PopupWindow是个登录框,点“确定”则自动填写,点“取消”则关闭PopupWindow。

 \

 

popupwindow.xml的源码:

 view plaincopy to clipboardprint?
<?xml version="1.0" encoding="utf-8"?> 
 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" android:layout_height="wrap_content" 
    android:orientation="vertical" android:background="#000000"> 
 
    <TextView android:id="@+id/username_view" 
        android:layout_height="wrap_content" 
        android:layout_marginLeft="20dip" 
        android:layout_marginRight="20dip" android:text="用户名" 
        android:textAppearance="?android:attr/textAppearanceMedium" android:layout_width="fill_parent"/> 
 
    <EditText android:id="@+id/username_edit" 
        android:layout_height="wrap_content" 
        android:layout_width="fill_parent" android:layout_marginLeft="20dip" 
        android:layout_marginRight="20dip" android:capitalize="none" 
        android:textAppearance="?android:attr/textAppearanceMedium" /> 
 
    <TextView android:id="@+id/password_view" 
        android:layout_height="wrap_content" 
        android:layout_marginLeft="20dip" 
        android:layout_marginRight="20dip" android:text="密码" 
        android:textAppearance="?android:attr/textAppearanceMedium" android:layout_width="fill_parent"/> 
 
    <EditText android:id="@+id/password_edit" 
        android:layout_height="wrap_content" 
        android:layout_width="fill_parent" android:layout_marginLeft="20dip" 
        android:layout_marginRight="20dip" android:capitalize="none" 
        android:password="true" 
        android:textAppearance="?android:attr/textAppearanceMedium" /> 
 
<LinearLayout android:id="@+id/LinearLayout01" android:layout_height="wrap_content" android:layout_width="fill_parent" android:gravity="center"><Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/BtnOK" android:layout_weight="100" android:text="确定"></Button><Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="100" android:text="取消" android:id="@+id/BtnCancel"></Button></LinearLayout> 
</LinearLayout> 
<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent" android:layout_height="wrap_content"
 android:orientation="vertical" android:background="#000000">

 <TextView android:id="@+id/username_view"
  android:layout_height="wrap_content"
  android:layout_marginLeft="20dip"
  android:layout_marginRight="20dip" android:text="用户名"
  android:textAppearance="?android:attr/textAppearanceMedium" android:layout_width="fill_parent"/>

 <EditText android:id="@+id/username_edit"
  android:layout_height="wrap_content"
  android:layout_width="fill_parent" android:layout_marginLeft="20dip"
  android:layout_marginRight="20dip" android:capitalize="none"
  android:textAppearance="?android:attr/textAppearanceMedium" />

 <TextView android:id="@+id/password_view"
  android:layout_height="wrap_content"
  android:layout_marginLeft="20dip"
  android:layout_marginRight="20dip" android:text="密码"
  android:textAppearance="?android:attr/textAppearanceMedium" android:layout_width="fill_parent"/>

 <EditText android:id="@+id/password_edit"
  android:layout_height="wrap_content"
  android:layout_width="fill_parent" android:layout_marginLeft="20dip"
  android:layout_marginRight="20dip" android:capitalize="none"
  android:password="true"
  android:textAppearance="?android:attr/textAppearanceMedium" />

<LinearLayout android:id="@+id/LinearLayout01" android:layout_height="wrap_content" android:layout_width="fill_parent" android:gravity="center"><Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/BtnOK" android:layout_weight="100" android:text="确定"></Button><Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="100" android:text="取消" android:id="@+id/BtnCancel"></Button></LinearLayo

补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,