問題タブ [spanned]
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 - Android - スパンされたオブジェクトを分解する
aaa
3 つのスパン、ccc
、を持つ Spanned オブジェクトを作成しますddd
。
bbb
html タグ内にないため、無視されています。
3 つのスパンのみを識別します。
コードの 4 つのセクションすべてを抽出する方法が必要です。可能であれば、各スパンのタイプを識別できる何らかの配列に変換する必要があります。
java - リストを入れる方法はありますかSaveInstanceState バンドルで?
Android アプリの SaveInstanceState に 2 つの String ArrayLists と 1 つの Spanned ArrayList を格納しようとしています。これは可能ですか?もしそうなら、例を挙げていただけますか?
java - Spanned キャストを使用した Html.toHtml (ClassCastException)
HTML を使用して (TextView で) 出力をフォーマットしようとしています。古い出力から HTML 形式のテキストを取得し、その 1 行上に新しいテキストを追加する必要があります。
これはコンパイルされますが、実行時に toHtml() メソッドで java.lang.ClassCastException: java.lang.String が発生します。toHtml() メソッドをそのように使用できると示唆する人を何人か見ましたが、何かが足りないのかもしれません。
android - SavedPreferences から Spanned に文字列をコピーするには?
SavedPreferences から文字列を取得し、その内容を Spanned クラスに入れて、Html マークアップを使用して EditText フィールドに表示できるようにしようとしています。現在のコードを以下に貼り付けましたが、String と Spanned が同じ型ではないため、なぜ機能しないのかがわかります...これを回避する良い方法を知っている人はいますか?
文字列を EditText に直接渡すことができません。以下のコードを使用してみました (「itemtext」は EditText です):
EditText は、次のように他の ItemGenActivity で宣言されます。
java - EditText 選択範囲でスケール
EditText
ズームしたいのですが、 setScaleX
/でスクロールするsetScaleY
とうまくいきます - テキストは正しい位置で編集されています。
しかし、テキストを選択しようとすると、テキストが拡大縮小されていないときのように、選択ハンドルが位置に描画されます。既知のバグです。
ビュー サイズに関連するポップアップ ウィンドウにハンドルが描画されるため、これは予期された結果です。
上のすべてのアクションandroid.widget.Editor
は、そのフィールドを対象としていますprivate TextView mTextView;
。また、リフレクションによって独自のエディターを設定する場合、オーバーライドできないプライベート メソッドをどうすればよいかわかりません。
また、レイアウトで計算されたポップアップ ウィンドウのandroid.widget.Editor.HandleView#HandleView
座標に選択ハンドルが描画されDynamicLayout
ます。
メソッドandroid.text.Layout#getPrimaryHorizontal(int, boolean)
は公開されており、その値は大規模に乗算できますが、そのためにはプライベート メソッドを拡張してオーバーライドする必要がありますandroid.widget.TextView#makeSingleLayout
が、これは問題です。
また、必要なすべてのオーバーライドされたメソッドを使用して独自のレイアウトを実装することもできますが、オーバーライドできるすべてのメソッドは@hide
注釈でマークされており、リフレクションでアクセスできるフィールドはありません。
次のスクリーンショットは、2 倍にスケーリングされた場合に表示されます
PS: タスクのコンテキストは、ピンチ ツー ズーム編集テキストを含むエディターです。サイズの計算によるテキストの再レイアウトは解決策ではありません。それぞれの画面サイズで Portable Document が必要だからです。