1. ドットをつけたい文字を入力します。
2. 次に [挿入] - [特殊文字] を開きます。
3. キーワードに U+0307 を入力します。
4. COMBINING DOT ABOVE (U+0307) が出てくるのでクリックします。
5. 先ほどの文字の上にドットがつきます。
2019年6月30日日曜日
2019年6月15日土曜日
RecyclerView 内の TextView で textIsSelectable が効かない問題に対応する
TextView に android:textIsSelectable="true" を指定すると、TextView 長押しで文字列を選択するモードになります。
しかし RecyclerView 内の TextView にこの指定をしても、
"TextView does not support text selection. Selection cancelled."
というメッセージがログに出て、文字列を選択するモードになりません。
(問題は Android 5.0, 5.1 では起こりません。Android 6.0 以降では起こります。)
これは Android platform の既知のバグのようです。
https://code.google.com/p/android/issues/detail?id=208169
対象方法は、一度 TextView を disabled にしてから enabled にします。
https://issuetracker.google.com/issues/37095917#comment11
https://stackoverflow.com/questions/37566303/edittext-giving-error-textview-does-not-support-text-selection-selection-canc
しかし RecyclerView 内の TextView にこの指定をしても、
"TextView does not support text selection. Selection cancelled."
というメッセージがログに出て、文字列を選択するモードになりません。
(問題は Android 5.0, 5.1 では起こりません。Android 6.0 以降では起こります。)
これは Android platform の既知のバグのようです。
https://code.google.com/p/android/issues/detail?id=208169
対象方法は、一度 TextView を disabled にしてから enabled にします。
https://issuetracker.google.com/issues/37095917#comment11
https://stackoverflow.com/questions/37566303/edittext-giving-error-textview-does-not-support-text-selection-selection-canc
class MainAdapter : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
...
override fun onViewAttachedToWindow(holder: RecyclerView.ViewHolder) {
super.onViewAttachedToWindow(holder)
if (holder is ViewHolder) {
holder.itemView.textView.isEnabled = false
holder.itemView.textView.isEnabled = true
}
}
}