我在Android中自定义按钮,更改其背景(使用9patch png文件)并更改其字体字体。我将按钮放在RelativeLayout
中,因为我需要在自定义布局中精确定位和标注此项目。我正在以编程方式完成所有这些工作(从创建到设置和显示)。
我发现this question有同样的问题,但解决方案对我不起作用。我用了
continueBtn.setPadding(0,0,0,0);
但图形输出保持不变。超过一半的文字在视图中被截断。
我正在使用的代码的摘录如下:
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
方法,事情都不会改变。
我究竟做错了什么?有什么想法吗?
答案 0 :(得分:-1)
您为45的按钮设置了一个恒定的高度(我想是像素)。但是,显然你试图放入的文本高于android允许你使用的空间量。使你的按钮更高(通过更改LayoutParams),它将适合而不会切断。或者,使用较小的文本大小,以便文本更短,更合适。