android学习笔记17——对话框(PopupWindow)
生活随笔
收集整理的這篇文章主要介紹了
android学习笔记17——对话框(PopupWindow)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
PopupWindow
==>
PopupWindow可創建類似對話框的窗口,使用其創建對話框窗口的操作步驟:
1.調用PopupWindow構造器構造PopupWindow對象;
2.調用PopupWindow的showAsDropDown(View v)將PopupWindow作為v組件的下拉組件顯示出來;
??或調用PopupWindow的showAtLocation方法將PopupWindow在指定位置顯示出來。
注意:
AlertDialog不能指定顯示位置,只能默認顯示在屏幕最中間(也可以通過設置WindowManager參數來改變位置);
而PopupWindow是可以指定顯示位置的,隨便哪個位置都可以,更加靈活。
?
實例如下:
布局文件==》 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="horizontal" ><Buttonandroid:id="@+id/btnTest"android:gravity="center_horizontal"android:layout_width="wrap_content"android:layout_height="wrap_content" android:text="110"/></LinearLayout><?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><ImageViewandroid:id="@+id/header"android:background="@drawable/eighteen"android:layout_width="wrap_content"android:layout_height="wrap_content" /><Buttonandroid:id="@+id/btnclose"android:layout_width="match_parent"android:layout_height="wrap_content" android:text="關閉"/> </LinearLayout>代碼實現==》 package com.example.mypopupwindow;import android.os.Bundle; import android.app.Activity; import android.view.Gravity; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.PopupWindow;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// 裝載R.layout.acitivity_main對應的界面布局View root = this.getLayoutInflater().inflate(R.layout.popup, null);// 創建PopupWindow對象final PopupWindow popup = new PopupWindow(root, 500, 500);Button btn = (Button) this.findViewById(R.id.btnTest);btn.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v){// 以下拉方式顯示popup.showAsDropDown(v);// 將PopupWindow顯示在指定位置popup.showAtLocation(findViewById(R.id.btnTest), Gravity.CENTER_HORIZONTAL, 200, 200);}});root.findViewById(R.id.btnclose).setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v){popup.dismiss();}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu){// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}運行效果:略
?
轉載于:https://www.cnblogs.com/YYkun/p/5780429.html
總結
以上是生活随笔為你收集整理的android学习笔记17——对话框(PopupWindow)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开源Java反编译工具
- 下一篇: Makefile学习之通配符和自动变量