Tôi không chắc chắn nó chỉ là "dòng cuối cùng", nhưng chúng tôi có một ứng dụng có một TextView với chiều rộng fill_parent, chiều cao wrap_content. Văn bản đang được đặt trong đó động từ mã Java. Dòng cuối cùng của văn bản chỉ đơn giản là không hiển thị, mặc dù có nhiều không gian trong bố cục. Bên trong của một hệ thống phân cấp khá sâu, do đó, tôi đoán là logic đo lường trong đó đang nhận được điều sai lầm, nhưng nó khá bực bội. Chúng ta cần phải đoán có bao nhiêu dòng sẽ có trong văn bản và thiết lập 'android: lines' cho phù hợp để làm cho nó hoạt động.TextView đã tự động cắt dòng cuối cùng của văn bản
Có ai thấy điều này không? Trong mã, hãy xem id 'contentTextView' về phía dưới cùng. Nếu tôi lấy ra 'android: lines', dòng cuối cùng của văn bản biến mất.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/flag"
>
<include android:id="@+id/incHeader" layout="@layout/header"/>
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<ImageView
android:layout_width="fill_parent"
android:layout_height="101dp"
android:background="@drawable/headershadow"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="invisible"
android:layout_weight="1"/>
<ImageView
android:layout_width="fill_parent"
android:layout_height="101dp"
android:background="@drawable/footershadow"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/gybcontentback"
android:layout_gravity="center_horizontal"
android:orientation="vertical">
<include android:id="@+id/gybHeaderInclude" layout="@layout/gybcontentheader"/>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="#4f4f4f"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:lines="9"
android:id="@+id/contentTextView"/>
<ImageView
android:layout_marginTop="15dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/button_blue_rascal_button"
android:id="@+id/buttonMoreInfo"/>
</LinearLayout>
</FrameLayout>
<include android:id="@+id/incFooter" layout="@layout/menu"/>
</LinearLayout>
Mã Java. Tôi đang điền vào TextView với một chuỗi Java chuẩn trong onCreate.
@Override
protected String body()
{
return "Rascal Flatts and The Jason Foundation, Inc. are working together to prevent suicide.\n\n" +
"Your Battle Buddy (or family member) may need a friend.\n\n" +
"Take the pledge to B1.";
}
Các cuộc gọi lớp cơ sở đó để có được những văn bản thực tế
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(contentView());
wireMenu();
TextView headerText = (TextView) findViewById(R.id.gybHeaderText);
if(headerText != null)
headerText.setText(header());
((TextView) findViewById(R.id.contentTextView)).setText(body()); // This is where the text is set
}
Dù sao, tôi đang sôi nó xuống. Tôi cắt các phần để xem những gì còn lại và vẫn nhận được cùng một vấn đề. Tôi nghĩ rằng tôi có thể đã tìm thấy cò súng, và một giải pháp, nhưng không phải là "nguyên nhân".
Chúng tôi có thể thấy mã Java liên quan đến vấn đề này không? –
Kevin, có thể hữu ích khi nhìn thấy khi bạn đang gọi setText() bc có thể ảnh hưởng đến cách wrap_content thực sự đang vẽ .. – LuxuryMode