[解決済み】Android TextView : "setTextで表示されたテキストを連結しない" について
2022-01-19 04:36:53
質問
を使ってテキストを設定しています。 setText() を以下の方法で実行します。
prodNameView.setText("" + name);
prodOriginalPriceView.setText("" + String.format(getString(R.string.string_product_rate_with_ruppe_sign), "" + new BigDecimal(price).setScale(2, RoundingMode.UP)));
その中で 最初に はシンプルな使い方で 第二 は、テキストに書式を設定するものです。
Android Studioはとても面白いので、メニュー
Analyze -> Code Cleanup
で、上の2行のように提案されました。
setTextで表示したテキストを連結しないでください。リソース文字列 プレースホルダーを使用する。(Ctrl+F1)
を呼び出す場合 TextView#setTextです。
- Number#toString() を数値の書式設定に使用しないでください。考慮すべきこと String#formatを使用して、適切な書式指定(%dまたは%f)をしてください。 代わりに
- テキスト表示に文字列リテラル(例:"Hello")を渡さないでください。ハードコードされたテキストは、他の言語に適切に翻訳されません。 代わりにAndroidのリソース文字列を使用することを検討してください。
- テキストチャンクを連結してメッセージを作成しないでください。そのようなメッセージは適切に翻訳されません。
これはどうしたらいいのでしょうか?どなたか、この物が何なのか、どうすればいいのか、説明してください。
解決方法は?
リソースはgetStringのオーバーロードバージョンで
varargs
タイプの
Object
:
getString(int, java.lang.Object...)です。
. strings.xmlで文字列を正しく設定し、正しいプレースホルダーを使用すれば、このバージョンを使って最終的な文字列のフォーマットされたバージョンを取得することができます。例えば、以下のようになります。
<string name="welcome_messages">Hello, %1$s! You have %2$d new messages.</string>
を使って
getString(R.string.welcome_message, "Test", 0);
を持つ文字列を返します。
"Hello Test! you have 0 new messages"
について
setText("" + name);
最初の例
prodNameView.setText("" + name);
は、私には何の意味もありません。TextViewはNULL値を扱うことができます。nameがNULLの場合、テキストは描画されません。
関連
-
[解決済み】Android 8:クリアテキストのHTTPトラフィックが許可されない
-
[解決済み] android.support.design.widget.FloatingActionButton クラスの展開に失敗しました。
-
[解決済み] TextViewでテキストを水平・垂直方向にセンタリングするには?
-
[解決済み] TextViewの文字色をコードで設定する方法は?
-
[解決済み] Androidのテキストビューの周りにボーダーを付けるには?
-
[解決済み] SQL Server で複数行のテキストを 1 つのテキスト文字列に連結する方法
-
[解決済み] AndroidでTextViewをスクロール可能にする
-
[解決済み] AndroidのTextViewで、フォントスタイルを太字、斜体、下線に設定するにはどうしたらいいですか?
-
[解決済み] Android TextView テキストの両端揃え
-
[解決済み】AndroidでTextViewのfontFamilyを変更する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Android - SDKバージョン23のアップデート後、ACTION-VIEWインテントフィルタを持つアクティビティを少なくとも1つ追加する。
-
[解決済み】Android TextView : "setTextで表示されたテキストを連結しない" について
-
[解決済み】まだ警告が出る:設定 'compile' は時代遅れで 'implementation' に置き換わった。
-
[解決済み】Android: Intent エラーを処理するアクティビティは見つかりませんでしたか?どのように解決するのか
-
[解決済み】Android Studio AVD - Emulator: 終了コード 1 でプロセスが終了
-
[解決済み】Couldn't load memtrack module Logcat Error
-
[解決済み】googleコンソールエラー`OR-IEH-01`について
-
[解決済み] Android Fragment no view found for ID?
-
[解決済み] Androidでイメージビューの背景を透明に設定する
-
[解決済み] strings.xmlに実行時の値をプレースホルダーとして持たせることは可能ですか?