我目前正努力让我的应用在不同的屏幕尺寸上更好地展示。此TextView现在应该扩展到View的末尾。这是有效的,但问题是它显示了这个丑陋的半线。我已经设置了其他边距和填充,但这使得它在一台设备或另一台设备上看起来很糟糕,所以我问自己是否有一个很好的解决方案让它看起来无处不在。这是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"/>
如果有人能够帮助我,那将是非常好的,谢谢你!
答案 0 :(得分: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);
}
}
}