私はプログラムでmaxLinesを設定してからandroid:ellipsize = "end"に設定しているというテキストビューを持っています。これは部分的に機能しますが、何らかの理由で切り捨てられているテキストが4.2.2の省略記号の後に数文字続けられます。新しい文字ではなく実際のテキストが切り捨てられています。android:省略記号の後ろにICSテキストの楕円が続きます
改行または "\ n"が付いたセクションごとに省略記号が追加されているため、2.3.6では正しく機能しません。
私はカスタムフォントを使用していませんが、これまでに問題が発生していることがわかりました。ここで
final TextView reviewView = (TextView) view.findViewById(R.id.textViewPosition3);
ViewTreeObserver observer = reviewView.getViewTreeObserver();
observer.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
int maxLines = (int) reviewView.getHeight()/reviewView.getLineHeight();
reviewView.setMaxLines(maxLines);
reviewView.setEllipsize(TruncateAt.END);
reviewView.getViewTreeObserver().removeGlobalOnLayoutListener(this);
//reviewView.getViewTreeObserver().removeOnGlobalLayoutListener(this);
}
});
は私のxmlです::私はMAXLINESを計算し、設定するのはここ
がある
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fragmentTestLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/restaurantImage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:src="@drawable/test"
android:layout_marginTop="-10dp"
android:layout_marginRight="20dp"
android:layout_marginLeft="20dp"
/>
<ImageView
android:id="@+id/squareBlack"
android:layout_alignRight="@id/restaurantImage"
android:layout_alignTop="@id/restaurantImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/square_black_small"
/>
<TextView
android:id="@+id/textViewPosition"
android:layout_alignRight="@id/squareBlack"
android:layout_alignLeft="@id/squareBlack"
android:layout_alignBottom="@id/squareBlack"
android:layout_alignTop="@id/squareBlack"
android:layout_margin="1dp"
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="This is a test"
android:textSize="25sp"
android:textColor="#a6cbff"
android:textStyle="bold"
/>
<ImageView
android:id="@+id/squareBlue"
android:layout_toLeftOf="@id/squareBlack"
android:layout_alignTop="@id/squareBlack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/square_blue_small"
/>
<TextView
android:id="@+id/textViewPosition1"
android:layout_alignRight="@id/squareBlue"
android:layout_alignLeft="@id/squareBlue"
android:layout_alignBottom="@id/squareBlue"
android:layout_alignTop="@id/squareBlue"
android:layout_margin="1dp"
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="7.5"
android:textSize="25sp"
android:textColor="#902515"
android:textStyle="bold"
/>
<TextView
android:id="@+id/restaurantName"
android:layout_alignLeft="@id/restaurantImage"
android:layout_alignBottom="@id/restaurantImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Restaurant Name"
android:textSize="25sp"
android:textColor="#fff"
android:textStyle="bold"
android:background="@drawable/greybar"
/>
<TextView
android:id="@+id/textViewPosition2"
android:layout_below="@id/restaurantImage"
android:layout_centerHorizontal="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="February 15, 2013"
android:textColor="#555"
android:textStyle="bold"
android:textSize="15sp"
/>
<Button android:id="@+id/readReview"
android:background="@drawable/readreview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:text="Read the Review"
android:textColor="#fff"
android:textColorHighlight="#ccc"
android:textSize="15sp"
android:textStyle="bold"
android:layout_centerHorizontal="true"
/>
<TextView
android:id="@+id/textViewPosition3"
android:layout_below="@id/textViewPosition2"
android:layout_above="@id/readReview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:textColorLink="#C90404"
android:layout_marginRight="15dp"
android:layout_marginLeft="15dp"
android:textColor="#000"
/>
</RelativeLayout>
問題を解決するようです。親切にありがとう。 – Garcon