마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 intent 질문

0 추천

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.habang.projectrich, PID: 20888
    java.lang.NumberFormatException: For input string: ""
        at java.lang.Integer.parseInt(Integer.java:627)
        at java.lang.Integer.parseInt(Integer.java:650)
        at com.example.habang.projectrich.partjop$1.onClick(partjop.java:39)
        at android.view.View.performClick(View.java:7232)
        at android.view.View.performClickInternal(View.java:7209)
        at android.view.View.access$3300(View.java:797)
        at android.view.View$PerformClick.run(View.java:27572)
        at android.os.Handler.handleCallback(Handler.java:878)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:209)
        at android.app.ActivityThread.main(ActivityThread.java:7046)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:486)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862)


package com.example.habang.projectrich;

import android.content.Context;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

import java.util.Locale;

public class gamepage extends BasicActivity {
    Button button7;
    TextView t1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_gamepage);
        t1 = (TextView)findViewById(R.id.t1);
        Intent intent = getIntent();
        String name = intent.getStringExtra("current");
        t1.setText(name);

        Button btn_go = (Button) findViewById(R.id.button7);
                btn_go.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Intent intent = new Intent(gamepage.this, partjop.class);
                        intent.putExtra("t1",t1.getText().toString());
                        startActivity(intent);
                    }
                });
    }
}

package com.example.habang.projectrich;

import android.content.Intent;
import android.provider.ContactsContract;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

public class partjop extends BasicActivity {
    TextView current, man;
    Button part1;
    String input1, input2;
    int sum;

    @Override
    protected void onCreate(final Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_partjop);

        current = (TextView) findViewById(R.id.current);
        man = (TextView) findViewById(R.id.man);
        Intent intent = getIntent();
        String name = intent.getStringExtra("t1");
        current.setText(name);

        Button button = (Button) findViewById(R.id.part1);
                button.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        Intent intent = new Intent(partjop.this, gamepage.class);
                        Toast.makeText(getApplicationContext(), "10000원 벌기 힘드네....", Toast.LENGTH_LONG).show();
                        input1 = current.getText().toString();
                        input2 = man.getText().toString();
                        sum = Integer.parseInt(input1) + Integer.parseInt(input2);
                        current.setText(Integer.toString(sum));
                        intent.putExtra("current",current.getText().toString());
                        startActivity(intent);
                    }
                });
    }
}

두 activity에서 버튼을 누를 때 마다 값이 이동되도록 intent를 만들었는데 첫번째에서 두번째로 가는 거는

되는데, 반대방향으로 가려고 하니까 오류가 걸리네요 ㅜㅜ 뭐가 문제일까요?

하방 님이 2019년 5월 22일 질문

1개의 답변

0 추천
뱅구다 (11,280 포인트) 님이 2019년 5월 22일 답변
그리고 에러메세지는 인텐트 값의 전달 문제가 아니라
com.example.habang.projectrich.partjop$1.onClick(partjop.java:39) 39번 라인의
 java.lang.NumberFormatException: For input string: "" 에러입니다.

스트링->인트 변환하는데 스트링의 값이 "" 비어있어서 그렇습니다.
정말 감사합니다 ㅜㅜㅜ 혹시 어디 스트링 값이 비었는지 알 수 있을까요?
...