0

私はAndroidを初めて使用するので、モバイル番号ではなく、整数データを取得する単純なアプリケーションを作成しようとしていました。あるアクティビティから別のアクティビティへ(両方のアクティビティで、編集テキストに保存されます)。送信者のアクティビティで次のコードを使用しました-

done.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent i=new Intent(ctx,MainActivity.class);
            i.putExtra("number", Long.parseLong(edittext.getText().toString()));
            ctx.startActivity(i);
        }
    });

以下は、受信者アクティビティの受信コードです-

num=getIntent().getIntExtra("number", set_default);
    accept(num);

protected void accept(long t) {
    // TODO Auto-generated method stub
    edittext=(EditText)findViewById(R.id.editText1);
    String a=(edittext.getText().toString()+t);
    clear(edittext);
    edittext.append(a);
}
private void clear(EditText edittext) {
    // TODO Auto-generated method stub
    edittext.setText("");

}

numはlong型です。

上記のコードの問題は、8桁の数字までは正しく機能しているが、9桁以降は正しく機能していないことです。以前は、送信者アクティビティでintをnumで使用し、int.parseIntをputExtraで使用していましたが、問題が発生してからかなり経ってから変更されましたが、保持されます。

誰かplzはこれで私を助けることができますか?

4

1 に答える 1

2

まだ使用していgetIntExtraます。を使用しgetLongExtraます。

num=getIntent().getLongExtra("number", (long) set_default);
于 2012-10-29T16:18:49.903 に答える