我正在自定义 Android 中的一个按钮,更改其背景(使用 9patch png 文件)并更改其字体。我将按钮放在 RelativeLayout
中,因为我需要在自定义布局中对此项进行精确定位和尺寸标注。我正在以编程方式完成所有这些工作(从创建到设置和显示)。
我找到了 this question有同样的问题,但解决方案对我不起作用。我用过
continueBtn.setPadding(0,0,0,0);
但图形输出保持不变。超过一半的文本在 View 中被截断。
我使用的代码摘录如下:
Button continueBtn = new Button(getContext());
p = new RelativeLayout.LayoutParams(width, 45);
p.addRule(CENTER_HORIZONTAL);
continueBtn.setLayoutParams(p);
continueBtn.setTypeface(...);
continueBtn.setTextSize(14);
outerLayout.addView(continueBtn);
continueBtn.setPadding(0, 0, 0, 0);
无论我将 setPadding
方法调用放在哪里,事情都不会改变。
我究竟做错了什么?有什么想法吗?
最佳答案
您正在为按钮设置 45(我猜是像素)的恒定高度。但是,显然您尝试放入其中的文本高于 android 允许您使用的空间量。使您的按钮更高(通过更改 LayoutParams),它会适合而不会被切断。或者,使用较小的文本大小,使文本更短且适合。
关于android - 如何避免文本在按钮上被截断?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11678435/