EditText
数日前に Nexus 10 を Android 4.3 にアップデートしたところ、ビューに奇妙な問題が発生していることに気付きました。テキストの周りにある黒い境界線の代わりに、それはビューの周りにあります.
テキストの周りに黒い境界線を描くために使用したコードは次のとおりです。それはうまく機能します..またはそう思いました。これはおそらく Android 4.3 のバグでしょうか? これは私が問題を抱えている唯一のデバイスであり、Android 4.2 を実行していたときには問題はありませんでした。
描画方法をオーバーライド:
@Override
public void draw(Canvas aCanvas)
{
BLACK_BORDER_PAINT.setColor(Color.BLACK);
aCanvas.saveLayer(null, BLACK_BORDER_PAINT, Canvas.FULL_COLOR_LAYER_SAVE_FLAG | Canvas.MATRIX_SAVE_FLAG);
drawBackground(aCanvas, -border_width, -border_width);
drawBackground(aCanvas, border_width + border_width, 0);
drawBackground(aCanvas, 0, border_width + border_width);
drawBackground(aCanvas, -border_width - border_width, 0);
aCanvas.restore();
super.draw(aCanvas);
}
描画背景:
private void drawBackground(Canvas aCanvas, int aDX, int aDY)
{
aCanvas.translate(aDX, aDY);
super.draw(aCanvas);
}
ペイント:
private static final Paint BLACK_BORDER_PAINT = new Paint();
static
{
BLACK_BORDER_PAINT.setXfermode(new PorterDuffXfermode(Mode.DST_OUT));
}
ご意見はありますか?バグかもしれない気がしますが、なんとも言えません。何かが欠けているだけかもしれません。さまざまなことを試しましたが、Android 4.3 の解決策はまだ見つかりません。