TextView
を整数の値として設定したいのですが、うまくいけば次のようになります。
tv.setText(int)
私はこれを試しましたが、このエラーが発生しました。
また、私の整数値は別のクラスにあります
D/AndroidRuntime: Shutting down VM
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.application, PID: 29603
Java.lang.IllegalStateException: Could not execute method for Android:onClick
at Android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.Java:293)
at Android.view.View.performClick(View.Java:5207)
at Android.view.View$PerformClick.run(View.Java:21168)
at Android.os.Handler.handleCallback(Handler.Java:746)
at Android.os.Handler.dispatchMessage(Handler.Java:95)
at Android.os.Looper.loop(Looper.Java:148)
at Android.app.ActivityThread.main(ActivityThread.Java:5443)
at Java.lang.reflect.Method.invoke(Native Method)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:728)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:618)
Caused by: Java.lang.reflect.InvocationTargetException
at Java.lang.reflect.Method.invoke(Native Method)
at Android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.Java:288)
at Android.view.View.performClick(View.Java:5207)
at Android.view.View$PerformClick.run(View.Java:21168)
at Android.os.Handler.handleCallback(Handler.Java:746)
at Android.os.Handler.dispatchMessage(Handler.Java:95)
at Android.os.Looper.loop(Looper.Java:148)
at Android.app.ActivityThread.main(ActivityThread.Java:5443)
at Java.lang.reflect.Method.invoke(Native Method)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:728)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:618)
Caused by: Android.content.res.Resources$NotFoundException: String resource ID #0x1
at Android.content.res.Resources.getText(Resources.Java:312)
at Android.widget.TextView.setText(TextView.Java:4427)
一般的に、
tv.setText(String.valueOf(int));
値が別のクラス内にある場合?そのクラスで必要な値のゲッターを作成できます。
public int getValue() {
return value;
}
あなたが他のものからそれにアクセスできるように:
[〜#〜] but [〜#〜] TextViewをintに設定すると、Androidresource id。intの値をテキストとして(それが指すリソースではなく)必要な場合は、最初に文字列にします。
tv.setText(String.valueOf(theOtherClassInstance.getValue()));
[〜#〜] edit [〜#〜]以下のコメントに従ってintがfirstResult
の場合、ゲッターは次のようになります。
public int getFirstResult() {
return firstResult;
}
SetText(int)を実行すると、値自体ではなく、XMLファイルのアプリケーションリソースを参照します。
整数を適切に設定するには、次のようにします。
tv.setText(""+integer);
以上の解決策:
tv.setText(String.valueOf(integer));