내 응용 프로그램에서 메시지를 보낸 후 다시로드되는 사용자 지정 어댑터 listview가 있습니다. 이 응용 프로그램은 일부 설치에서 문제가 발생합니다. 나는 스택 트레이스를 콘솔에 가지고있다. 여기에 코드 :사용자 정의 adatper getView null 포인터를 반환합니다
class IconicAdapter extends ArrayAdapter<Integer> {
Activity context;
IconicAdapter(Activity context) {
super(context, R.layout.message_layout, listItems);
this.context = context;
}
public View getView(int position, View convertView, ViewGroup parent) {
//you can access layout inflater by accessing hosting activity
convertView = getActivity().getLayoutInflater().inflate(R.layout.message_layout, parent, false);
JSONObject json_data = null;
try {
json_data = jArray.getJSONObject(position);
} catch (JSONException e) {
}
try {
tv = (TextView) convertView.findViewById(R.id.username);
tv.setText(json_data.getString("username"));
여기에 스택 추적 :
java.lang.NullPointerException:
at com.testing.gold.CommunityFragment$IconicAdapter.getView (CommunityFragment.java:945)
at android.widget.HeaderViewListAdapter.getView (HeaderViewListAdapter.java:232)
라인 945 : tv.setText (json_data.getString ("이름"));
아마 당신의 json_data가 null의 경우, 스택 트레이스 인쇄 : 캐치 (JSONException 전자를) { } – diegoveloper
는 더 캐치 내부도 e.printstacktrace 스택 트레이스 – tobias
인쇄에서 JSON에 대해 아무것 json_data와는 없습니다. 그리고 로그를 넣으십시오. – diegoveloper