問題と質問:
現在、ビューページャーがあり、その中には2つのページ/ビューしかなく、水平方向に隣り合っています。
私のビューは、2 色のグラデーションとその上に低い不透明度/アルファ値で画像を描画するカスタム ビューです。
画面をスワイプして最初のビュー/ページから 2 番目のビュー/ページに、またはその逆に移動すると、画像がつぶれてしまうことがわかりました。これが起こらないようにするにはどうすればよいですか?
例:
左の画像は、スワイプ前に表示される最初のビューを示しています。右の画像は、スワイプの途中の 2 つのビューを示しています。
コード:
以前に設定したDrawable
変数がありますが、overlayImage
不透明度を設定する以外には何もしていません。
@Override
protected void onDraw(Canvas canvas) {
p.setShader(new LinearGradient(0, 0, 0, getHeight(), startColor, endColor, Shader.TileMode.MIRROR));
canvas.drawPaint(p);
//Pretty sure the mistake is around these two next lines
overlayImage.setBounds(canvas.getClipBounds());
overlayImage.draw(canvas);
}