我試圖從JSON獲取數據,並在android.This TextView中顯示它是我剛纔的問題:Display Student details in text view after validation in android這是我在IMEI_Val.java代碼:顯示JSON結果在有效的用戶輸入後,另一個活動
@Override
protected void onPreExecute() {
super.onPreExecute();
loading = ProgressDialog.show(IMEI_Val.this,"Please Wait",null,true,true);
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
loading.dismiss();
if(s.contains("Success")){
Intent i = new Intent(IMEI_Val.this, CapturePhoto.class);
try {
JSONObject responseObject = new JSONObject();
JSONArray canData = responseObject.getJSONArray("can_data");
JSONObject canDataJSONObject = canData.getJSONObject(0);
String name = canDataJSONObject.getString("name");
String father_name = canDataJSONObject.getString("father_name");
String sex = canDataJSONObject.getString("sex");
i.putExtra("name",name);
i.putExtra("father_name",father_name);
i.putExtra("sex",sex);
startActivity(i);
} catch (JSONException e) {
e.printStackTrace();
}
}
else{
Toast.makeText(IMEI_Val.this, s, Toast.LENGTH_LONG).show();
Log.d("Tag Name", "Log Message");
}
}
這是我的另一項活動,我想顯示細節:
private void getData() {
textNameVal=(TextView)findViewById(R.id.textNameVal);
textYearVal=(TextView)findViewById(R.id.textYearVal);
String name = getIntent().getStringExtra("name");
String father_name = getIntent().getStringExtra("father_name");
String sex = getIntent().getStringExtra("sex");
textNameVal.setText("Candidate Name:\t" + name);
textYearVal.setText("SEX:\t" + sex);
textParentVal.setText("Father's NAme:\t" + father_name);
}
當我運行這段代碼,如果我進入它不會CapturePhoto.class有效輸入。任何人都可以幫助我解決問題。對於錯誤的輸入,它會在烤麪包上顯示「不存在」的信息。但是對於有效的輸入,它僅顯示對話爲「請稍等」,並且不會再接下來活動。
嘗試更改'JSONObject responseObject = new JSONObject();'到'JSONObject responseObject = new JSONObject(s);' –
引起:java.lang.NullPointerException:嘗試調用虛擬方法'void android.widget.TextView。在com.example.user.studenttechweb.CapturePhoto.getData(CapturePhoto.java:218)的空對象引用上的setText(java.lang.CharSequence)'我得到這個錯誤,如果我把它。 – user6588225
您在第二個活動中沒有初始化'textParentVal'。 –