我正在开发贺卡应用程序,我需要卡片翻转视图类型的视图。我已经添加了相同的图像。我经历过多个类似翻转视图的库,我发现android-flipview 更适合我的要求。我在这个库中进行了更改,使其像贺卡一样从左角翻转。我正在添加相同的代码和屏幕截图。
但是,它不像我需要的那样工作。
查看_Dual_card.java 文件,我做了如下更改:
public synchronized void buildTexture(FlipRenderer renderer, GL10 gl) {
if (screenshot != null) {
if (texture != null)
texture.destroy(gl);
texture = Texture.createTexture(screenshot, renderer, gl);
recycleScreenshot();
topCard.setTexture(texture);
bottomCard.setTexture(texture);
final float viewHeight = texture.getContentHeight();
final float viewWidth = texture.getContentWidth();
final float textureHeight = texture.getHeight();
final float textureWidth = texture.getWidth();
if (orientationVertical) {
topCard.setCardVertices(new float[] { 0f, viewHeight, 0f, // top left
0f, viewHeight / 2.0f, 0f, // bottom left
viewWidth, viewHeight / 2f, 0f, // bottom right
viewWidth, viewHeight, 0f // top right
});
topCard.setTextureCoordinates(new float[] { 0f, 0f, 0f,
viewHeight / 2f / textureHeight,
viewWidth / textureWidth,
viewHeight / 2f / textureHeight,
viewWidth / textureWidth, 0f });
bottomCard.setCardVertices(new float[] { 0f, viewHeight / 2f,
0f, // top left
0f, 0f, 0f, // bottom left
viewWidth, 0f, 0f, // bottom right
viewWidth, viewHeight / 2f, 0f // top right
});
bottomCard.setTextureCoordinates(new float[] { 0f,
viewHeight / 2f / textureHeight, 0f,
viewHeight / textureHeight, viewWidth / textureWidth,
viewHeight / textureHeight, viewWidth / textureWidth,
viewHeight / 2f / textureHeight });
} else {
topCard.setCardVertices(new float[] { 0f, viewHeight, 0f, // top left
0f, 0f, 0f, // bottom left
viewWidth /27f, 0f, 0f, // bottom right
viewWidth /27f, viewHeight, 0f // top right
});
topCard.setTextureCoordinates(new float[] { 0f, 0f, 0f,
viewHeight / textureHeight,
viewWidth / 27f / textureWidth,
viewHeight / textureHeight,
viewWidth / 27f / textureWidth, 0f });
bottomCard.setCardVertices(new float[] {0f,
viewHeight, 0f, // top left
0f, 0f, 0f, // bottom left
viewWidth, 0f, 0f, // bottom right
viewWidth, viewHeight, 0f // top right
});
bottomCard.setTextureCoordinates(new float[] {
viewWidth /27f / textureWidth, 0f,
viewWidth /27f / textureWidth,
viewHeight / textureHeight, viewWidth / textureWidth,
viewHeight / textureHeight, viewWidth / textureWidth,
0f });
}
checkError(gl);
}
}
我想要的是:
我得到了什么:
提前致谢。