Android編程中PopupWindow的用法分析【位置、動(dòng)畫、焦點(diǎn)】
本文實(shí)例講述了Android編程中popupwindow用法。分享給大家供大家參考,具體如下:
在Android中有很多級(jí)別的Window,不同級(jí)別的Window按照z-index方向分布。下面看看Android控件(view)PopupWindow的用法(位置、動(dòng)畫、焦點(diǎn))。
1、創(chuàng)建PopouWindow及相關(guān)參數(shù)設(shè)置
//創(chuàng)建一個(gè)包含自定義view的PopupWindow private PopupWindow makePopupWindow(Context cx) { PopupWindow window; window = new PopupWindow(cx); TextView contentView = new TextView(cx); contentView.setGravity(Gravity.CENTER); final Resources res = cx.getResources(); // contentView.setBackgroundColor(R.color.page_window_bgcolor); // window.setBackgroundDrawable(new // ColorDrawable(res.getColor(R.color.page_window_bgcolor))); contentView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); //設(shè)置PopupWindow顯示和隱藏時(shí)的動(dòng)畫 window.setAnimationStyle(R.style.AnimationFade); //設(shè)置PopupWindow的大?。▽挾群透叨龋? window.setWidth(res.getDimensionPixelSize(R.dimen.page_window_width)); window.setHeight(res.getDimensionPixelSize(R.dimen.page_window_height)); //設(shè)置PopupWindow的內(nèi)容view window.setContentView(contentView); //設(shè)置PopupWindow外部區(qū)域是否可觸摸 window.setOutsideTouchable(true); return window; }
2、PopupWindow顯示和隱藏的動(dòng)畫設(shè)置
XML配置代碼:
<!-- PopupWindow窗口淡入淡出動(dòng)畫 --> <style name="AnimationFade"> <item name="android:windowEnterAnimation">@anim/fade_in</item> <item name="android:windowExitAnimation">@anim/fade_out</item> </style>
JAVA代碼:
window.setAnimationStyle(R.style.AnimationFade);
3、PopupWindow的焦點(diǎn)設(shè)置
window.setFocusable(true); //設(shè)置PopupWindow可獲得焦點(diǎn) window.setTouchable(true); //設(shè)置PopupWindow可觸摸 window.setOutsideTouchable(true); //設(shè)置非PopupWindow區(qū)域可觸摸
4、PopupWindow的顯示及顯示位置設(shè)置
window.showAtLocation(); window.showAsDropDown();
這些方法及相關(guān)參數(shù)使用將在后面詳細(xì)介紹。
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進(jìn)階教程》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android操作SQLite數(shù)據(jù)庫(kù)技巧總結(jié)》、《Android操作json格式數(shù)據(jù)技巧總結(jié)》、《Android數(shù)據(jù)庫(kù)操作技巧總結(jié)》、《Android文件操作技巧匯總》、《Android編程開發(fā)之SD卡操作方法匯總》、《Android資源操作技巧匯總》及《Android控件用法總結(jié)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
相關(guān)文章
android實(shí)現(xiàn)線程間通信的四種常見方式
線程通信相信大家都不陌生了,但是你知道幾種方法呢,本文主要介紹了android實(shí)現(xiàn)線程間通信的四種常見方式,分享給大家,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-05-05Android打包篇:Android Studio將代碼打包成jar包教程
這篇文章主要介紹了Android打包篇:Android Studio將代碼打包成jar包教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03Android 個(gè)人理財(cái)工具二:使用SQLite實(shí)現(xiàn)啟動(dòng)時(shí)初始化數(shù)據(jù)
本文主要介紹 Android 使用SQLite實(shí)現(xiàn)啟動(dòng)時(shí)初始化數(shù)據(jù),這里對(duì)SQLite 的數(shù)據(jù)庫(kù)進(jìn)行詳解,附有示例代碼,有興趣的小伙伴可以參考下2016-08-08深入Android HandlerThread 使用及其源碼完全解析
這篇文章主要介紹了深入Android HandlerThread 使用及其源碼完全解析,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08Android開發(fā)中計(jì)算器的sin、cos及tan值計(jì)算問(wèn)題分析
這篇文章主要介紹了Android開發(fā)中計(jì)算器的sin、cos及tan值計(jì)算問(wèn)題,結(jié)合實(shí)例形式分析了Android三角函數(shù)運(yùn)算中的弧度與角度計(jì)算問(wèn)題與相關(guān)解決方法,需要的朋友可以參考下2017-11-11Android系統(tǒng)優(yōu)化Ninja加快編譯
這篇文章主要為大家介紹了Android系統(tǒng)優(yōu)化使用Ninja加快編譯示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08