它是一种聊天屏幕,Textview包含图像(9-Patch Image)作为背景可绘制。 所有设备都完美运行。 请参考图片:
遇到的问题是在三星S3的Android 4.3中,图像(9-Patch)无法使用边距或填充进行textview。背景图像没有伸展以给予保证金。请参考图片:
我已经尝试了所有保证金,但它只是在Android 4.3中没有反映出来。它是特定于设备还是Android 4.3的错误?
我该如何解决这个问题?
答案 0 :(得分:0)
当使用9补丁图像作为背景时,您不必将边距/填充设置为内部视图。 9补丁的内容区域定义在右侧和底部1像素条带中。你的图像在所有图像上都设置了一个内容区域,这导致了问题中提到的行为。
使用正确设置的内容区域尝试此图片:
答案 1 :(得分:0)
所以我的解决方案只是以编程方式设置填充,例如:
int leftRightPadding = ctx.getResources().getDimensionPixelSize(R.dimen.message_chat_padding_left_right);
int bottomTopPadding = ctx.getResources().getDimensionPixelSize(R.dimen.message_chat_padding_bottom_top);
text.setPadding(leftRightPadding, bottomTopPadding, leftRightPadding, bottomTopPadding);