0

我目前正在努力使我的应用程序在不同的屏幕尺寸上显示得更好。这个 TextView 现在应该延伸到视图的末尾。这可行,但问题是它随后显示了这条丑陋的半线。我已经设置了其他边距和填充,但这使它在一台或另一台设备上看起来很糟糕,所以我问自己是否有一个好的解决方案让它在任何地方看起来都合适。这是对应的TextView:

<TextView
    android:id="@+id/text3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@id/relative_layout"
    android:layout_marginBottom="5dp"
    android:layout_marginTop="5dp"
    android:layout_marginLeft="5dp"
    android:layout_marginRight="5dp"
    android:maxLines="100"
    android:ellipsize="end"
    android:textSize="18sp"
    android:clickable="true"
    android:textAppearance="?android:attr/textAppearanceMedium"
    android:textIsSelectable="false"/>

这是它目前的样子

如果有人能够帮助我,那就太好了,在此先感谢!

4

1 回答 1

0

我创建了一个这样的 AdaptingTextView:

public class AdaptingTextView extends TextView {

public AdaptingTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}

public AdaptingTextView(Context context, AttributeSet attrs) {
super(context, attrs);
}

public AdaptingTextView(Context context) {
super(context);
}

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

// set fitting lines to prevent cut text
int fittingLines = h / this.getLineHeight();
if (fittingLines > 0) {
    this.setLines(fittingLines);
}
}
}

来源:https ://stackoverflow.com/a/26998769/3272495

于 2015-11-25T17:23:13.643 回答