テキスト ビューに数字を設定するのに問題があります。最初の数字だけが表示され、残りは切り捨てられます。たとえば、この文字列を「12345」に設定すると、「1」のみが表示されます。setText メソッドでその数値をハードコードすると機能しますが、Integer.toString で数値を設定すると機能しないことに注意してください。また、デバッグ用にトーストを作成しましたが、表示される文字列は正しいものです。
アクティビティのコードは次のとおりです。
int inviteCount = inviteArray.size();
String inviteCountString = Integer.toString(inviteCount);
inviteCountTextView.setText(inviteCountString);
showToast(inviteCountString);
protected void showToast(final String text) {
// Creates a Toast when there is an error
runOnUiThread(new Runnable(){
@Override
public void run() {
Toast.makeText(RootActivity.this, text, Toast.LENGTH_SHORT).show();
}
});
}
そして、これがレイアウトファイルのコードです
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/inviteImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/friend_invitations_background" />
<TextView
android:id="@+id/inviteNumber"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginBottom="2dp"
android:text="0"
android:textColor="#88ffffff"
android:textSize="12sp" />
</FrameLayout>
前もって感謝します。
編集:
これがエラーのスクリーンショットです。ご覧のとおり、トーストには 10 が表示されています。しかし、上部にある texfield には 1 しか表示されていません。ここでも、android:text="10" と書くと正しく表示されます。