編輯:關於Android編程
本文實例講述了Android編程實現popupwindow彈出後屏幕背景變成半透明效果的方法。分享給大家供大家參考,具體如下:
android中popupwindow彈出後,屏幕背景變成半透明這個效果很普通。實現的方法也很多。我使用的可能是最簡單的一種,就是設置一下getWindows的透明度。不多說上代碼
/**
* 設置添加屏幕的背景透明度
* @param bgAlpha
*/
public void backgroundAlpha(float bgAlpha)
{
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.alpha = bgAlpha; //0.0-1.0
getWindow().setAttributes(lp);
}
之所以設置成方法,是因為當popwindow關閉的時候我們還要將這個透明度改回來。
popWin = new PopupWindow(popAddNoteType, mScreenWidth *8 /10, ViewGroup.LayoutParams.WRAP_CONTENT); //在PopupWindow裡面就加上下面代碼,讓鍵盤彈出時,不會擋住pop窗口。 popWin.setInputMethodMode(PopupWindow.INPUT_METHOD_NEEDED); popWin.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); //點擊空白處時,隱藏掉pop窗口 popWin.setFocusable(true); popWin.setBackgroundDrawable(new BitmapDrawable()); backgroundAlpha(1f); //添加pop窗口關閉事件 popWin.setOnDismissListener(new poponDismissListener());
這裡可能有人就要問了,當我點擊屏幕空白處時,pop窗口是沒了,可是背景還是半透明的,這不行啊。這裡我們就用到一個事件
/**
* 添加新筆記時彈出的popWin關閉的事件,主要是為了將背景透明度改回來
* @author cg
*
*/
class poponDismissListener implements PopupWindow.OnDismissListener{
@Override
public void onDismiss() {
// TODO Auto-generated method stub
//Log.v("List_noteTypeActivity:", "我是關閉事件");
backgroundAlpha(1f);
}
}
上面
復制代碼 代碼如下:popWin.setOnDismissListener(new poponDismissListener());
的代碼就是調用這個事件
希望本文所述對大家Android程序設計有所幫助。
Qt for Android 部署流程分析
今天為了測試使用 Qt Creator 3.0.0 開發的純 C 工程,利用了 Windows 下 Qt 5.2 for Android 開發入門裡創建的 HelloAn
Android JSON數據與實體類之間的相互轉化(GSON的用法)
這篇文章就是示范如何用GSON把JSON數據與實體類進行相互轉化,需要用到gson-2.3.1.jar這個包。直接貼代碼了:import java.lang.reflec
android之App Widget開發實例代碼解析
Android Widget開發案例實現是本文要介紹的內容,主要是來了解並學習Android Widget開發應用,今天我們要寫一下Android Widget的開發,由
Android自制彈幕
今天要實現的效果如下:1.彈幕垂直方向固定2.彈幕垂直方向隨機上面效果圖中白色的背景就是彈幕本身,是一個自定義的FrameLayout,我這裡是為了更好的展示彈幕的位置才