2016-11-05 5 views
-2

上の仮想メソッドを呼び出すための試み」私はこの質問について、すべての答えを参照しようとしましたが、私と一緒にのjava.lang.NullPointerException:nullのオブジェクト参照

を動作しませんでした私はカウンター・ビュー・リターンヌルことを知っているが、私ドン

は、コード内でそのような何かをしようとしましたが、働いていなかった理由がわからない

 public View getView(int position, View convertView, ViewGroup parent) { 
    // TODO Auto-generated method stub 



    LayoutInflater inflater=activity.getLayoutInflater(); 

    if(convertView == null){ 

     convertView=inflater.inflate(R.layout.column_row, null); 

     txtFirst=(TextView) convertView.findViewById(R.id.name); 
     txtSecond=(TextView) convertView.findViewById(R.id.gender); 
     txtThird=(TextView) convertView.findViewById(R.id.age); 
     //txtFourth=(TextView) convertView.findViewById(R.id.status); 

     if (txtFirst == null) { 
      txtFirst.setText("kkkk"); 
     } 
     if (txtSecond == null) { 
      txtSecond.setText("kllll"); 
     } 
     if (txtThird == null) { 
      txtThird.setText("llllll"); 
     } 

    } 
    return convertView; 
    } 

マイlogcat

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.ListView.setAdapter(android.widget.ListAdapter)' on a null object reference 

私のコード

package com.example.bavly.dollorvalueindifferentboanksegypt; 



import android.app.Activity; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.BaseAdapter; 
import android.widget.TextView; 

import java.util.ArrayList; 
import java.util.HashMap; 

import static  
com.example.bavly.dollorvalueindifferentboanksegypt.constants.FIRST_COLUMN; 
import static 
com.example.bavly.dollorvalueindifferentboanksegypt.constants.SECOND_COLUMN; 
import static 
com.example.bavly.dollorvalueindifferentboanksegypt.constants.THIRD_COLUMN; 

public class ListViewAdapters extends BaseAdapter { 
public ArrayList<HashMap<String, String>> list; 
Activity activity; 
TextView txtFirst; 
TextView txtSecond; 
TextView txtThird; 
//TextView txtFourth; 
public ListViewAdapters(Activity activity,ArrayList<HashMap<String, String>> list){ 
    super(); 
    this.activity=activity; 
    this.list=list; 
} 

@Override 
public int getCount() { 
    // TODO Auto-generated method stub 
    return list.size(); 
} 

@Override 
public Object getItem(int position) { 
    // TODO Auto-generated method stub 
    return list.get(position); 
} 

@Override 
public long getItemId(int position) { 
    // TODO Auto-generated method stub 
    return 0; 
} 



@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    // TODO Auto-generated method stub 



    LayoutInflater inflater=activity.getLayoutInflater(); 

    if(convertView == null){ 

     convertView=inflater.inflate(R.layout.column_row, null); 

     txtFirst=(TextView) convertView.findViewById(R.id.name); 
     txtSecond=(TextView) convertView.findViewById(R.id.gender); 
     txtThird=(TextView) convertView.findViewById(R.id.age); 
     //txtFourth=(TextView) convertView.findViewById(R.id.status); 


    } 

    HashMap<String, String> map=list.get(position); 
    txtFirst.setText(map.get(FIRST_COLUMN)); 
    txtSecond.setText(map.get(SECOND_COLUMN)); 
    txtThird.setText(map.get(THIRD_COLUMN)); 
    //txtFourth.setText(map.get(FOURTH_COLUMN)); 

    return convertView; 
} 

} 
+0

本当に? 'if(txtFirst == null){txtFirst.setText(" kkkk "); } '。 –

+0

私はそれを削除した場合、私はまだ同じ問題があります – Bav

+0

あなたの質問にListViewはありませんが、それはnullです、あなたは例外を読んで、それがなぜデバッグされるべきですか?なぜなら、NullPointerExceptionの理由は常に同じであるからです。 –

答えて

1

リストビューはnullです。 findViewByIdがnullを返さないことを確認してください。

+0

ありがとう私はあなたが言うことを検索しました 私はそこに解決策を見つけました http://stackoverflow.com/questions/3264610/findviewbyid-returns-null 間違いがありましたその中に戻ったとき メインアクティビティ setContentView(R.layout.listvalue); – Bav

関連する問題