2017-05-03 6 views
-1

を与える。これは、私の活動です:私は、リストビューのカスタムアダプタを作るが、それはNULLポインタ例外に

 public class TopReviews extends AppCompatActivity { 

      public static String[] item_name={"Shoes","Shirts","Jeans","T-Shirts","Suite"}; 
      // public static String[] item_quantity={"2","4","3","2","8"}; 
      public static String [] item_description ={"Aqwer tyuffds","ABCSas fdkdfjsd","JAVA 12345669sd","assdecd Jsp","Microsoft band kro .Net"}; 
      public static String [] item_username ={"Ali","Bashir","Ahsan","Abubakar","Shani"}; 



      ListView lv; 
      Context context1; 


      protected void onCreate(Bundle savedInstanceState) { 
       super.onCreate(savedInstanceState); 
       setContentView(R.layout.activity_top_reviews); 

       context1=this; 

       lv=(ListView) findViewById(R.id.reviews_listview); 

    **//I Always got the null point exception on the line below...** 

       lv.setAdapter(new ReviewsAdapterForReviews(context1,item_name,item_name,item_name)); 

      } 
     } 

これは私のアダプタクラスです:

package com.app.beautysaloon; 

import android.content.Context; 
import android.content.DialogInterface; 
import android.content.Intent; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.AdapterView; 
import android.widget.ArrayAdapter; 
import android.widget.Button; 
import android.widget.TextView; 
import android.widget.Toast; 
import java.util.ArrayList; 
import java.util.Arrays; 
import java.util.List; 
import java.util.stream.*; 


public class ReviewsAdapterForReviews extends ArrayAdapter<String> { 


    String[] i_name,i_username,i_description; 
    LayoutInflater inflater; 
    Context context123; 
    public static Intent i; 
    ViewHolder holder; 
    public ReviewsAdapterForReviews(Context context, String[] item_name,String[]item_description,String[]item_username) { 

     super(context, R.layout.activity_top_reviews,item_name 
     ); 
     // TODO Auto-generated constructor stub 
     context123=context; 
     i_name=item_name; 
     i_username=item_username; 
     i_description=item_description; 
    } 
    public class ViewHolder { 
     TextView item_name,item_description,item_username; 
    } 
    @Override 
    public View getView(final int position, View convertView, 
         ViewGroup parent) { 
     // TODO Auto-generated method stub 

     if(convertView==null){ 
      inflater=LayoutInflater.from(context123); 
      convertView=inflater.inflate 
        (R.layout.activity_top_reviews,null); 
     } 

     holder=new ViewHolder(); 

     holder.item_name=(TextView) convertView.findViewById 
       (R.id.saloonname_tv); 
     holder.item_description=(TextView) convertView.findViewById 
       (R.id.reviews_description_tv); 
     holder.item_username = (TextView) convertView.findViewById 
       (R.id.username_tv); 


     holder.item_name.setText(i_name[position]); 
     holder.item_description.setText(i_description[position]); 
     holder.item_username.setText(i_username[position]); 

     return convertView; 
    } 
} 

私はちょうどしようとしています静的なデータをアクティビティのリストビューに渡します。 nullポインタの例外がどこにあるか調べてください。 私はこれらのテキストビューをホルダークラスで取得し、アダプタークラスでも同じレイアウトを渡しますが、アダプタークラスの関数を呼び出すところで、リストビューでヌルポイント例外を指定します。

+0

[NullPointerExceptionとは何ですか?それを修正するにはどうすればいいですか?](http://stackoverflow.com/questions/218384/what-is-a-nullpointerexception-and-how-do-i-fix -it) –

+0

私のコードで例外を見つけることができません –

+0

スタックトレースは、例外が発生する行番号を持っています。 –

答えて

0

は、おそらくこの呼び出しはnull返します

findViewById(R.id.reviews_listview) 

それはそのようなビューがないことを意味します。

関連する問題