Я создаю Cubeview, который расширяет GLSurfaceview, и я хочу сделать прозрачный фон, но не могу этого сделать.Установить прозрачность в GLSurfaceview
Я уже использую setZOrderOnTop() в MainActivity & glClearColor() в GLSurfaceview зрения класса, а также следить за многими link, но не работают.
public class RubikActivity extends Activity {
cubeView cv;
GLSurfaceView gv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity);
cv = (cubeView) findViewById(R.id.cubeView);
cv.initialize(PreferenceManager.getDefaultSharedPreferences(this));
cv.requestFocus();
cv.setFocusableInTouchMode(true);
cv.setEGLConfigChooser(8, 8, 8, 8, 8,0);
// cv.setRenderer(new CubeRenderer(getApplicationContext(), font, mWorld, rCube, mMenu, prefs);
cv.getHolder().setFormat(PixelFormat.TRANSLUCENT);
cv.setZOrderOnTop(true);
}
CubeView.java
public cubeView(Context context, AttributeSet attrs) {
super(context, attrs);
font = new TextureFont(getContext(), R.drawable.roboto_regular, "roboto_regular_dims.txt");
mWorld = new GLWorld();
}
public void initialize(SharedPreferences prefs) {
rCube = new Rubec(mWorld, prefs.getInt("dim", 3));
mMenu = new CubeMenu(rCube, font);
_renderer = new CubeRenderer(getContext(), font, mWorld, rCube, mMenu, prefs);
rCube.setRenderer(_renderer);
mWorld.setRubeCube(rCube);
setRenderer(_renderer);
getHolder().setFormat(PixelFormat.TRANSLUCENT);
setZOrderOnTop(true);
}
CubeRenderer.java
public void onDrawFrame(GL10 g) {
GL11 gl = (GL11)g;
surfaceSetup(gl);
gl.glClearColor(0,0,0,1);
gl.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT);
}
Я хочу прозрачный Cubeview
случайная попытка - 'surfaceView.setEGLContextClientVersion (2); surfaceView.setZOrderOnTop (true); surfaceView.setEGLConfigChooser (8, 8, 8, 8, 16, 0); surfaceView.getHolder(). SetFormat (PixelFormat.RGBA_8888); ' – Kiran
@Kiran Я попробовал, но не работал для меня ................... n спасибо за помощь мне –