LoginSignup
29
15

More than 5 years have passed since last update.

Android 8.0のTextViewでワードラップがおかしい件のワークアラウンド

Posted at

はじめに

皆さんの端末にはOreo来ましたか? 私のZenfone3には先週Oreoが降ってきました。基本的には問題ないのですが、いくつかのアプリで妙なことに気が付きました。

image.png

image.png

ワードラップがおかしいのです。明らかに禁則処理とは関係ないところで行末が折り返されています。

てことで

調べました。
APIレベル23で、TextViewに以下のメソッドが追加されました。

このメソッドでTextView/EditTextのワードラップアルゴリズムが変更可能になっています。
上記リファレンスによると、TextViewでは BREAK_STRATEGY_HIGH_QUALITY が、EditTextでは BREAK_STRATEGY_SIMPLE がデフォルト値として使用されます。

それぞれ、設定して長文を表示させたものが以下のスクショです。
<BREAK_STRATEGY_HIGH_QUALITY>

<BREAK_STRATEGY_SIMPLE>

HIGH_QUALITYでは行末の折り返しがおかしいことが分かります。

それで

このバグはAOSP由来のもので、Android 8.0 Emulatorでも同様に発生します。また、8.1では修正されている模様です。

    <TextView
        android:breakStrategy="simple"
    />

これで対策が出来ます。
ワードラップに拘る場合は、8.0に限りsetBreakStrategy()を呼び出してやる、などの対応で良いと思います。

以上です。

29
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
29
15