文本裁剪android textView

时间:2018-04-18 13:48:06

标签: android textview

我有4个textview,它们的大小取决于指南,指南的位置是正确的,因为它已经在整个项目中使用过。我尝试了很多解决方案,但没有一个能帮我解决问题。无论屏幕大小,字体大小或文字如何,我的文字都会被裁剪。

enter image description here

我查找了根据容器大小自动调整文本字段文本字体大小的选项,但它对我没用。

这是我要找的结果。

enter image description here

这些textview是自定义textview扩展android.support.v7.widget.AppCompatTextView但到目前为止尚未对文本本身进行任何修改。

编辑:这是我的自定义类

public class MyTextView extends android.support.v7.widget.AppCompatTextView {
    private Context context = null;
    private AttributeSet attrs = null;


    public MyTextView(Context context, AttributeSet attrs) {
        super(context, attrs);

        this.context = context;
        this.attrs = attrs;

        setWillNotDraw(false);
        setIncludeFontPadding(false);
    }

    @Override
    public void onSizeChanged (int w, int h, int oldw, int oldh){
        super.onSizeChanged(w, h, oldw, oldh);
    }

    @Override
    protected void onDraw(Canvas canvas) {
        super.onDraw(canvas);
    }
}

这是xml

<android.support.constraint.Guideline
android:id="@+id/TopOf"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.031200000000000002" />
                        <android.support.constraint.Guideline
android:id="@+id/StartOf"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
app:layout_constraintGuide_percent="0" />
                        <android.support.constraint.Guideline
android:id="@+id/BottomOf"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.9062" />
                        <android.support.constraint.Guideline
android:id="@+id/EndOf"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.16477" />
                        <com.customView.MyTextView
android:id="@+id/MyTextView"
android:fontFamily="roboto"

android:text="Downloads" 
android:textColor="#5d5d5d"
android:textSize="8dp"
app:autoSizeTextType="uniform"
android:textStyle="bold"
android:gravity="left"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
app:layout_constraintStart_toStartOf="@+id/StartOf"
app:layout_constraintTop_toTopOf="@+id/TopOf"
app:layout_constraintEnd_toEndOf="@+id/EndOf"
app:layout_constraintBottom_toBottomOf="@+id/BottomOf" />

1 个答案:

答案 0 :(得分:0)

您需要提供android:layout_height="wrap_content" textview

<TextView android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:singleLine="true"
    android:padding="5dp"
    android:text="text" />