問題タブ [spannablestringbuilder]
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.
android - 複数のフォント/テキストサイズなどで文字列を作成する SpannableStringBuilder 例?
次のような文字列を表示する TextView に配置された文字列を作成する必要があります。
最初の部分は太字ではありません BOLD 残りは太字ではありません
だから私はこれを行うためにどのように使用できるか知りたいSpannableStringBuilder
ですか?
これを達成するために 3 つの TextEdit を使用できますが、最適なソリューションを使用したいと思います。
android - SpannableStringBuilder に、書式設定された文字列内にあるスパンを追加する方法は?
バックグラウンド
SpannableStringBuilder を使用して複数のものを追加するとします。そのうちの 1 つは、strings.xml ファイルからフォーマットした文字列で、内部にスパンがあります。
問題
悲しいことに、そのような文字列をフォーマットするとスパン自体が削除されるため、私の場合、背景色のテキストはありません。
これは、「getString」の行で発生します。
私が試したこと
スパンだけを(「getString」なしで)追加すると、正常に機能します。
Html.fromHtml も調査しようとしましたが、とにかくテキストの背景色をサポートしていないようです。
質問
スパンを持つ文字列をフォーマットすることは可能ですか?
より具体的には、入力は、strings.xml ファイルからの文字列 A で、プレースホルダーのみ (特別な HTML タグはありません) と、実行時にプレースホルダーを置き換える別の文字列 B です。文字列 B は、それ自体の部分的なテキストを強調表示する必要があります。
私の場合、強調表示されたテキストは、文字列 B 内で検索するものです。
android - Html.toHtml を使用してフォント サイズを保持し、Html.fromHtml を使用して復元する方法は?
私は明らかにAndroidに非常に慣れていません。誰でも私を助けることができますか?色(テキストの異なる色)、フォントサイズ(テキストの異なるフォントサイズ)、フォントファミリーを設定する機能があるEditTextがあります。のような SpannableStringBuilder を使用して実装したこと
を使用してeditTextを保存しました
特定の条件で、 editText を string に保存する前と同じように取得したいので、
すべてがそのまま設定されますが、すべてのテキストのフォントサイズは同様に設定されます。例:私がedittextに設定したのは
しかし、復元後に取得しています
文字列を印刷しようとすると
Log.d("HTML = ",spannableString);
次のHTMLを取得しました....
前もって感謝します
java - Android Editable は抽象的です。インスタンス化できません
サブクラスを作成しEditText
ていて、編集可能な変数を作成してスーパー クラスに渡したいと考えています。
私が最初に試したとき
エラーが発生しました
「編集可能」は抽象的です。インスタンス化できません
Google でこのエラーを検索しても、役立つ結果が返されませんでした。そのため、回答を見つけたので、この質問を以下の回答と共に追加します。
android - SpannableStringBuilder の構築におけるフラグ変数とは
Google ドキュメントで flags パラメータを読みましたが、正確に何をしているのかわかりません。たとえば、以下のコードでは:
4 番目のパラメータを変更して、次のように変数を設定しても違いはありません: Spanned.SPAN_INCLUSIVE_INCLUSIVE,Spanned.SPAN_INCLUSIVE_EXCLUSIVE,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
結果に違いはありません。
しかし、このコードを実行すると:
builder1.setSpan に渡す 4 番目のパラメーターに基づいて、異なる結果が得られます。
誰かがなぜこれが起こるのか説明できますか?