2011-03-15 50 views
4

setZOrderOnTop是在Android API級別5中引入的。這是一種在較早的API級別中存在的功能的簡便方法嗎?如果是這樣,我將如何去在Android 1.6上創建相同的效果?Android 1.6 setZOrderOnTop替代

一些背景信息:
我想獲得一個GLSurfaceView與透明像素呈現在我的佈局的其餘部分之上。到目前爲止,我還沒有成功,GLSurfaceView顯示並呈現正常,但透明的像素顯示爲完全黑色。我的猜測是默認的GLSurfaceView行爲是我的問題的原因:

表面是Z排序,以便它在窗口後面持有其SurfaceView; SurfaceView在其窗口中打出一個孔以允許其表面顯示。

+0

因此,讓我們說你只是在你的佈局中有一個圖像,你希望你的GLSurfaceView透明地在你的佈局圖像上繪製?以便可以調整阿爾法並獲得「淡入/淡出」效果? – 2011-04-21 06:34:54

+0

你的假設是正確的,我有一個帶有透明像素的GLSurfaceView,這些像素應該顯示在表面「後面」顯示的圖像。 – 2011-04-26 10:52:17

回答

1

AFAIK,沒有任何方法可以改變SurfaceView的ZOrder(在以前的版本中)。

因爲這需要訪問放置SurfaceView的窗口,並且沒有任何方法可以獲取該窗口的引用。

+0

我可以調用哪個函數返回一個窗口。如果我有這個窗口的引用,我將如何去改變SurfaceView的z順序?該功能記錄在這裏:http://developer.android.com/reference/android/app/Activity.html#getWindow%28%29 – 2011-04-26 10:49:44

+0

該方法將返回您的活動窗口,而不是放置SurfaceView的窗口。 – Karan 2011-04-26 11:58:53