GradientDrawable边框textview croped

时间:2016-08-20 10:11:53

标签: android textview gradientdrawable

如下图所示,我将GradientDrawable作为textview的背景。

结果很奇怪:文字被破坏了。

Result

还有代码:

GradientDrawable border = new GradientDrawable();
    border.setColor(0x00FFFFFF);
    border.setStroke(1,Color.GRAY);
    border.setCornerRadius(size);

    EditText surname = new EditText(this);
    surname.setGravity(Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM);
    surname.setBackground(border);
    surname.setTypeface(Stats.fontRegular);
    FrameLayout.LayoutParams lps = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, size_x);
    surname.setLayoutParams(lps);
    view.addView(surname);

如果您知道解开文本的方法,那对我来说非常有用:)

3 个答案:

答案 0 :(得分:0)

您可以使用以下XML代码更改重力:

<TextView  
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:gravity="center"
    android:text="@string/**yourstringname**"
/>

答案 1 :(得分:0)

我找到了有用的东西:

当您使用EditText时,似乎视图中有一些填充。所以你可以使用

“禁用”它们
EditText.setPadding(int left, int top, int right, int bottom)

答案 2 :(得分:0)

试试这个:

 GradientDrawable border = new GradientDrawable();
border.setColor(0x00FFFFFF);
border.setStroke(1,Color.GRAY);
border.setCornerRadius(size);
border.setSize(450, 150);