Help us understand the problem. What is going on with this article?

TextViewのellipsizeを設定して落ちた時の対応

More than 5 years have passed since last update.

概要

TextViewのEllipsizeを設定して「...」を表示させる設定をした場合、GALAXY J(Android4.3.0)でArrayIndexOutOfBoundsExceptionで落ちる現象が発生した。

詳細

以下のようなXML定義したところ問題が発生した。

<TextView
   android:id="xxx"
   android:ellipsize="end"
   android:scrollHorizontally="true"
   android:singleLine="true"/>

文字列は動的に設定して、「...」が発生する文字列の場合に発生しました。
GALAXY S2(Android4.0.4)では発生しないため、特定のバージョンでのバグの可能性があります。

解決法

<TextView
    android:id="xxx"
    android:scrollHorizontally="true"
    android:lines="1"
    android:singleLine="true"/>

android:singleLineをandroid:lines="1"とandroid:singleLine="true"で回避出来る模様。
では、2行以上で「...」を実現したい場合はどうすればいいか?は今のところわかってません。
Google先生が早くバグフィックスしてくれることを祈りましょう。
ちなみに私は仕様を変更して逃げました。

参考

Crash when using ellipsize="start" (Jelly Bean)

https://code.google.com/p/android/issues/detail?id=33868

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away