2012-12-13 6 views
0

추가 정보 양식을 가져 오려고 할 때 NullPoiterException이 발생합니다. 내가Android : 인 텐트에 추가 기능을 사용할 때 NullPointerException이 발생했습니다.

int posizione2 =Integer.parseInt((getIntent().getExtras().getString(Intent.EXTRA_TEXT))); 

대단히 감사합니다 어떤 도움을 호출 할 때 오류가 정확히 발생합니다!

private void aggiungiImm(View arg1, int arg2) { 
    Intent i=newintent(Intent.ACTION_PICK,ContactsContract.Contacts.CONTENT_URI); 
    i.putExtra(Intent.EXTRA_TEXT, Integer.toString(arg2)); 
    startActivityForResult(i, PICK_REQUEST);  
}  

@Override 
protected void onActivityResult(int requestCode, int resultCode,Intent data) { 
    Uri contactData=null; 
    if (requestCode==PICK_REQUEST) { 
    if (resultCode==RESULT_OK) { 
    contactData=data.getData();      
    int posizione2 =Integer.parseInt((getIntent().getExtras().getString(Intent.EXTRA_TEXT))); 

EDITED : 지금까지 솔루션이 없습니다. 문제가 이것이 암시 적 의도라는 사실과 관련이있을 수 있습니까 ??

+1

getStringExtra (문자열 이름) –

+0

당신이 –

답변

2

대신

int posizione2 =Integer.parseInt((getIntent().getExtras().getString(Intent.EXTRA_TEXT))); 

을 사용하기 :

Bundle extras = getIntent().getExtras(); 
if (extras==null) { 
    Log.e("", "No extras provided"); 
    return; 
} 

String myText = extras.getString(Intent.EXTRA_TEXT); 
if (myText==null) { 
    Log.e("", "No text provided"); 
    return; 
} 

int posizione2 = Integer.parseInt(myText); 

당신이 예외를주는 상황을 확인하기 위해 도움이 될 것입니다 ...에 의해

반환 된 텍스트 (해당 텍스트가 다른 활동의 결과로 전달되는 경우)는 ava가됩니다. 함수에 전달 된 Intent의 ilable. 그래서 당신은 일을해야한다 :

if (data.getString(Intent.EXTRA_TEXT)==null) { 
    Log.e("", "No text provided"); 
    return; 
} 

int posizione2 = Integer.parseInt(data.getString(Intent.EXTRA_TEXT)); 

getIntent() 방법은 당신에게 호출 활동을 시작했다있는 의도를 줄 것이다. 호출 된 활동의 결과를 보유하려는 의도는 없습니다.

No text provided 메시지를받는 경우 메시지를 계산하는 작업에서 결과를 제대로 반환하지 못했음을 의미합니다.

+0

죄송합니다, 자신을 수정하십시오. 결과는 "No extras provided"입니다 ... –

+1

답안의 끝 부분을보십시오 :'int posizione2 = Integer.parseInt (data.getString (Intent.EXTRA_TEXT));' –

3

노력이 시도 data.getStringExtra(Intent.EXTRA_TEXT)

+1

은'getIntent()가'데이터는 항상 올 onActivityResult' 때문에'내부에서 일한 적이있는 onActivityResult' 활동 '으로 돌아 오는 사용자의 다른 활동에'setResult'를 사용하지 때까지이 작동하지 않습니다 마지막 매개 변수 인 '의도 데이터' –

+0

죄송합니다. 작동하지 않습니다. –

관련 문제