




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Android開(kāi)發(fā)實(shí)戰(zhàn)經(jīng)典第7章: Android中的基本控件(下) 彈出窗口:PopupWindow北京魔樂(lè)科技軟件學(xué)院李興華研發(fā)部本章目標(biāo)掌握彈出窗口的基本實(shí)現(xiàn);掌握彈出窗口的處理操作;E-MAIL:彈出窗口:PopupWindow在軟件的開(kāi)發(fā)之中,用戶可以使用PopupWindow組件,在窗口上彈出一個(gè)小窗口以進(jìn)行一些操作,例如:一些即時(shí)通訊軟件,在更改其自身狀態(tài)時(shí),就會(huì)彈出一個(gè)如圖所示的窗口進(jìn)行操作。E-MAIL:android.widget.PopupWindow類的常用操作方法E-MAIL:No.方法類型
2、描述1public PopupWindow(Context context)構(gòu)造創(chuàng)建PopupWindow實(shí)例2public PopupWindow(View contentView, int width, int height)構(gòu)造創(chuàng)建PopupWindow實(shí)例,同時(shí)傳入彈出窗口的顯示寬度和高度3public PopupWindow(View contentView, int width, int height, booleanfocusable)構(gòu)造創(chuàng)建PopupWindow實(shí)例,同時(shí)傳入彈出窗口的顯示寬度和高度以及是否設(shè)置焦點(diǎn)4public void dismiss()普通隱藏窗口5pu
3、blic int getHeight()普通取得彈出窗口的高度6public int getWidth()普通取得彈出窗口的寬度7public boolean isShowing()普通判斷窗口是否顯示8public void setAnimationStyle(int animationStyle)普通為彈出窗口設(shè)置動(dòng)畫(huà)9public void setContentView(View contentView)普通設(shè)置顯示組件10public void setFocusable(boolean focusable)普通設(shè)置是否獲得焦點(diǎn)11public void setHeight(int he
4、ight)普通設(shè)置彈出窗口高度12public void setWidth(int width)普通設(shè)置彈出窗口寬度13public void setOnDismissListener(PopupWindow.OnDismissListener onDismissListener)普通設(shè)置彈出窗口隱藏后的范例:定義彈出窗口組件布局管理器 popwindow.xml(A)E-MAIL:布局管理器高度為組件高度組件高度為文字高度默認(rèn)選中的組件鈕默認(rèn)顯示文字默認(rèn)顯示文字默認(rèn)顯示文字單選鈕組件完結(jié)范例:定義彈出窗口組件布局管理器 popwindow.xml(B)E-MAIL:
5、默認(rèn)顯示文字范例:定義布局管理器 main.xmlE-MAIL:布局管理器高度為屏幕高度 默認(rèn)顯示文字默認(rèn)顯示文字范例:定義Activity程序,操作彈出窗口(A)E-MAIL:package org.lxh.demo;import android.app.Activity; import android.os.Bundle; import android.view.Gravity;import android.view.LayoutInflater;import android.view.View;import a
6、ndroid.view.View.OnClickListener;import android.widget.Button; import android.widget.PopupWindow; import android.widget.RadioButton; import android.widget.RadioGroup;import android.widget.RadioGroup.OnCheckedChangeListener;import android.widget.TextView;public class MyPopupWindowDemo extends Activit
7、y private Button popbut = null;/ 按鈕組件private RadioGroup changestatus = null;/ 單選鈕組件private TextView statusinfo = null;/ 文本顯示組件private Button cancel = null;/ 按鈕組件private PopupWindow popWin = null;/ 彈出窗口private View popView = null;/ 保存彈出窗口布局Overridepublic void onCreate(Bundle savedInstanceState) super
8、.onCreate(savedInstanceState);super.setContentView(R.layout.main);/ 設(shè)置布局管理器this.popbut = (Button) super.findViewById(R.id.popbut); / 取得組件this.statusinfo = (TextView) super.findViewById(R.id.statusinfo); / 取得組件this.popbut.setOnClickListener(new OnClickListenerImpl(); / 設(shè)置單擊范例:定義Activity程序,操作彈出窗口(B)E-
9、MAIL:private class OnClickListenerImpl implements OnClickListener / 設(shè)置Overridepublic void onClick(View view) LayoutInflater inflater = LayoutInflater.from(MyPopupWindowDemo.this);/ 取得LayoutInflater對(duì)象MyPopupWindowDemo.this.popView = inflater.inflate(R.layout.popwindow, null); / 讀取布局管理器My
10、PopupWindowDemo.this.popWin = new PopupWindow(popView, 300, 220,true);/ 實(shí)例化PopupWindow MyPopupWindowDemo.this.changestatus = (RadioGroup) popView.findViewById(R.id.changestatus); / 取得組件MyPopupWindowDemo.this.cancel = (Button) popView.findViewById(R.id.cancel); / 取得組件MyPopupWindowDemo.this.changestat
11、us.setOnCheckedChangeListener(new OnCheckedChangeListenerImpl();/ 設(shè)置MyPopupWindowDemo.this.cancel.setOnClickListener(new OnClickListener() Overridepublic void onClick(View v) MyPopupWindowDemo.this.popWin.dismiss(); / 關(guān)閉彈出窗口);MyPopupWindowDemo.this.popWin.showAtLocation(MyPopupWindowDemo.this.popbut
12、, Gravity.CENTER, 0, 0);/ 顯示彈出窗口范例:定義Activity程序,操作彈出窗口(C)E-MAIL:private class OnCheckedChangeListenerImpl implementsOnCheckedChangeListener / 選項(xiàng)選中時(shí)觸發(fā)Overridepublic void onCheckedChanged(RadioGroup group, int checkedId) RadioButton but = (RadioButton) MyPopupWindowDemo.this.popView.findViewById(group.getCheckedRadioButtonId();/ 取得選中組件MyPopupWindowDemo.this.statusinfo.setText(當(dāng)前用戶狀態(tài):+ but.ge
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)培訓(xùn)心得課件模板
- 英語(yǔ)寫(xiě)作同伴互評(píng)感知量表的編制與探索性應(yīng)用
- 高層建筑拆除與環(huán)保處理一體化合同
- 出租車公司股權(quán)轉(zhuǎn)讓與市場(chǎng)拓展合作協(xié)議
- 企業(yè)團(tuán)隊(duì)培訓(xùn)課件
- 租賃款回收方案
- 拆遷補(bǔ)償安置住房購(gòu)買(mǎi)與裝修設(shè)計(jì)服務(wù)合同
- 餐飲企業(yè)后廚承包與運(yùn)營(yíng)管理合同范本
- 低碳環(huán)保型住宅小區(qū)車位產(chǎn)權(quán)轉(zhuǎn)讓及新能源應(yīng)用合同
- 國(guó)有企業(yè)財(cái)務(wù)顧問(wèn)保密及財(cái)務(wù)風(fēng)險(xiǎn)管理合同
- 2025河南大河控股有限公司招聘3人筆試參考題庫(kù)附帶答案詳解
- 第三屆全國(guó)技能大賽競(jìng)賽(裝配鉗工)選拔賽備考試題(附答案)
- 水閣污水處理廠二期工程-污泥系統(tǒng)設(shè)備采購(gòu)項(xiàng)目招標(biāo)文件
- 禮盒定制協(xié)議書(shū)范本
- 《民法學(xué)課件》課件-第五編-第十六章 所有權(quán)通論
- 2025年理財(cái)師考試面試技巧試題及答案
- 《雙碳管理基礎(chǔ)與實(shí)務(wù)》課件-第六章 ESG管理
- 心力衰竭教案
- 現(xiàn)場(chǎng)勞務(wù)班組管理制度
- 2025年班組長(zhǎng)綜合管理技能競(jìng)賽理論考試題庫(kù)500題(含答案)
- 2024-2025學(xué)年四川省成都市錦江區(qū)八年級(jí)上學(xué)期期末數(shù)學(xué)試卷(含答案)
評(píng)論
0/150
提交評(píng)論