popupwindow 增加半透明遮罩

2021-09-28 05:19:45 字數 1264 閱讀 8373

//在show的時候加入addmask

private void addmask(ibinder token) {

windowmanager.layoutparams wl = new windowmanager.layoutparams();

wl.width = windowmanager.layoutparams.match_parent;

wl.height = windowmanager.layoutparams.match_parent;

wl.format = pixelformat.translucent;//不設定這個彈出框的透明遮罩顯示為黑色

wl.token = token;//獲取當前activity中的view中的token,來依附activity

maskview = new view(context);

maskview.setbackgroundcolor(0x7f000000);

maskview.setfitssystemwindows(false);

maskview.setonkeylistener(new view.onkeylistener() {

@override

public boolean onkey(view v, int keycode, keyevent event) {

if (keycode == keyevent.keycode_back) {

removemask();

return true;

return false;

* 通過windowmanager的addview方法建立view,產生出來的view根據windowmanager.layoutparams屬性不同,效果也就不同了。

* 比如建立系統頂級視窗,實現懸浮視窗效果!

windowmanager.addview(maskview, wl);

public void removemask() {

if (null != maskview) {

windowmanager.removeviewimmediate(maskview);

maskview = null;

//記得監聽popupwindow消失時還原activity,

window.setondismisslistener(new popupwindow.ondismisslistener() {

@override

public void ondismiss() {

removemask();

unity 支援半透物體的流光效果(vf版本)

最近特效製作說要加個特效流光,就寫了一下 使用方法和之前部分模型流光效果一直 這個是手動流光,方便特效k動畫 如果要自動流光則改改uv賦值 流光圖y軸偏移 uv.y time.y speedy 流光圖x軸偏移 uv.x time.y speedx 下面是shader shader effect ex...

MIDP2 0下處理Alpha通道產生半透明效果

遊戲中經常會用到半透明效果。但midp1.0年代似乎只有nokia和lg兩家的擴充套件api給出了可以處理alpha通道的api。在midp2.0下,我們可以用image類提供的方法得到乙個的半透明版本。try catch ioexception e int argb new int image.g...

在WinCE下繪製半透的效果要注意的問題

在 windows xp 中實現半透明效果並不是件難事,僅僅只需要調 setlayeredwindowattributes 函式即可。如果同樣的效果也想在 windows ce 中重現呢?因為 windows ce 沒有setlayeredwindowattributes 函式,不過在windows...