問題タブ [spannablestring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1160 参照

android - SpannableString のテキスト シャドウを設定する方法はありますか?

Androidのホーム画面ウィジェットを持ってTextViewいます..残念ながら、スタイリングに問題があります..

テキストに動的な (コードから変更された) 影を適用したいのですが、その方法がわかりません。レイアウトで影を設定することはできますが、コードで変更したい場合、RemoteView!でこれを行う方法はありません。

でこれを行うことができると思ったがSpannableString、有用なものが見つからない.. を使用するTextAppearanceSpanと、スタイルからのシャドウ属性が無視されます。SpannableStringさらに、 on aを使い始めた瞬間に、 :(TextViewに適用した影を無視し始めますTextView

それの何が問題なのですか?ここでの私の最善の行動は何ですか?

0 投票する
1 に答える
1861 参照

android - Spannable オブジェクトの改行オフセットを取得する

Spannable次のようにフォーマットされたオブジェクトがあります。

これが最初の行です。

これが2行目です。最初より楽しいです。

では、3 行目を追加しましょう。

に投げると、TextView期待どおりに改行が表示されます。Spannable私が知りたいのは、オブジェクトから改行のインデックスを取得するにはどうすればよいですか? 適用されたすべてのスパンを調べたところ、RelativeSizeSpans とStyleSpans しかありませんでした。ありがとう。

0 投票する
1 に答える
7758 参照

android - TextView の各単語で onTouchListeners を使用するにはどうすればよいですか?

TextView の各単語に onTouchListeners を割り当てたいと思います。(インターネット上の何かにリンクするのではなく、アプリ内のゲーム ロジックを継続するためです)。この時点での私のゲームの一般的なアクションは、TextView を確認し、単語にタッチすることです。それがターゲットの単語である場合は、それ以外の場合は、タッチした単語に基づいて別の TextView をロードして繰り返します。これを達成する方法は、各単語に対して ClickableSpans と onClicks を使用することです。

しかし、私はむしろ onTouchListeners を持っているので、touch_down で単語の背景の色を変更し、touch_up でゲーム ロジックを実行して、より応答性の高い外観にすることができます。どうすればこれを達成できますか?

0 投票する
1 に答える
790 参照

java - Android 開発: スパン数の多い SpannableString で setText を使用すると、遅い、回避策がありますか?

アプリ用に小さなシンタックス ハイライターを作成しました。

正規表現を実行し、ForegroundColorSpans を EditText のコンテキストのコピーに適用します - すべてスレッド内です。これがすべて完了すると、setText() メソッドが呼び出され、EditText のコンテキストがスタイル設定されたコピーに置き換えられます。

問題は、setText() メソッドによって UI がフリーズすることです。2,000 行のファイルで行ったテストでは、スタイル付きテキストを適用するのに 30 秒かかりました!

構文の強調表示を大きなファイルで使用しないことをユーザーに推奨し、大きなファイルを開くと自動的にオフにすること以外に、構文の強調表示を高速化するにはどうすればよいですか? 正規表現を削減してより効率的にすることとは別に。

ありがとう、アレックス。

0 投票する
2 に答える
19477 参照

android - Android開発:EditTextの一部をSpannableに置き換える方法

Editable返品元の一部をgetText()スパンに置き換えようとしています。

私は試しましgetText().replace()たが、それはのためだけですCharSequences

私がこれを行おうとしている理由はEditText、全体を強調表示するのではなく(少し遅れて)、セクションを次々に強調表示できるようにするためですEditText(大きなファイルでは遅くなる可能性があります)。

誰かが私がこれをどのように行うかについての手がかりを持っていますか?

0 投票する
4 に答える
22387 参照

android - Android Linkify テキスト - シングル テキスト ビューのスパン可能なテキスト - Twitter のツイートのように

私はtextViewと次のようなテキストを持っています

「これは、キーワードとブラウズするためのリンクを含む単純テキストです

上記のテキストで私が作りたい..

リンクをクリックすると、その URL が開きそのキーワードをクリックすると、アプリケーションで新しいアクティビティが開きます

また、 TextView全体のクリックイベントもあります。

解決策を見つけるのを手伝ってください。ありがとう、MKJParekh

0 投票する
1 に答える
1211 参照

android - ListViewのSpannableString正規表現

カスタムアダプタを使用して、文字列のコレクションをバインドしているListViewがあります。また、テキスト内の特定のキーワードに下線を引いています。SpannableStringと正規表現を使用して単語に下線を付けていますが、これが最も効率的な方法であるかどうか疑問に思っています。java.util.regex.Matcherクラスとregex.util.regex.PatternクラスのAllocationTrackerに多くの割り当てがあり、アプリでメモリリークが発生している可能性があります。正規表現は高額になる可能性があることは知っていますが、必要なことを行う別の方法がわかりません。

0 投票する
4 に答える
29024 参照

android - SpannableString:2つ以上のRelativeSizeSpansを適用することは可能ですか?

SpannableStringを次のように作成しようとしています。

ここに画像の説明を入力してください

2文字(m、s)は、残りの文字よりも小さくする必要があります。すべてのテキストを1つのSpannableStringに保持しようとしました。また、SpannableStringBuilderを介して2つのSpannableStringを連結しようとしました。1つのSpannableのコードは次のようになります。

ただし、適用されるフォーマットは1つだけです。SpannableStringBuilderを使用する場合は「m」のみが小さくなり、テキスト全体に1つのSpannableStringを使用する場合は、「s」のみが小さくなります。

デバッグでは、SpannablesがRelativeSizeSpanのインスタンスを1つだけ保持しているように見えることも示されました。つまり、1つのタイプのSpanは1つしか存在できません。これは本当の、または予想される動作ですか?代わりにTextViewを連結することをお勧めしますか?

編集:ちなみに、パフォーマンス上の理由から、ここでHTML.fromHtml()呼び出しを削除しようとしています(多くのGC呼び出し)。

0 投票する
2 に答える
3289 参照

android - なぜ ListView.getChildCount()==0 (常に)?

アクティビティの作成時に、ListView の項目に SpannableString を設定します。
私は次のように書きます。

しかし、doListlist.getChildCount() は常に = 0 であることがわかり
ました。質問はどこですか? または、これを行うための他のより良い方法はありますか?

0 投票する
1 に答える
3483 参照

android - SpannableString[/Builder] とリッチテキストの使用

最初の部分が「次を探しています:」と表示され、太字になっているリッチ テキストを作成しようとしていますが、残りの部分は太字ではありません。これは私のコードです:

ただし、その結果、行全体が太字になります。多くのバリエーションを試しましたが、書体を適切に制御することができません...どのようにコーディングしても、最初の書体を保持する傾向があります。

「Looking for:」だけを太字にして、残りのテキストを通常の (太字ではない) にするにはどうすればよいですか?