1

こんにちは、私の質問をお詫びします。私はJavaを勉強していて、今はandroidのテストプログラムを作成しています。

int a = 10;

私が行うJavaの場合:System.out.println(a);これは完全に機能します。

アンドロイドでは使えませんsetText(a);か?

変数を文字列に変換する必要がありますか?

ありがとう!

ポル

4

5 に答える 5

1

最初にTextViewの Api ドキュメントを確認してから、メソッドで整数値を渡すことの意味を理解する必要がありますsetText()

setText()オーバーロードされたメソッドです。

整数値を渡すと、値の xml ファイル (string.xml など) で宣言したリソース ID と同様に考慮されるため、整数値を渡すと、渡された指定された整数に関してリソース ID を見つけようとします。指定された整数と一致するリソースが見つからず、アプリがクラッシュします。

あなたが今理解していることを願っています。

于 2012-11-05T16:47:31.343 に答える
1

String.valueOf()を使用して、整数値を String に次のようにキャストします。

int a=10;

text_Rate.setText(String.valueOf(a));

""または、TextView で整数値を次のように表示するために Integer を追加できます。

int a=10;

text_Rate.setText(""+a);
于 2012-11-05T15:31:33.460 に答える
0

は であるため、 にStringas 引数を与える必要があります。オーバーロードされたメソッドの 1 つが であるため、すべてを受け入れますが、それはありません。を使用することも、単に使用することもできます。setText()aintSystem.out.println()System.out.println(Object)setText()String.valueOf(a)setText("" + a)

于 2012-11-05T16:58:00.910 に答える
0

System.out.println()文字列を引数として除外できます。ただしsetText()、引数として文字列のみを取ります。したがって、数値を文字列として表示したい場合は、String.valueOf()メソッドを使用できます。

これが役立つことを願っています。

于 2012-11-05T16:35:31.690 に答える
0

int を String オブジェクトにキャストする必要があります

String s = Integer.toString(a);
view.setText(s);
于 2012-11-05T15:31:54.660 に答える