TEL:400-8793-956
当前位置:程序、服务器

另一个null指针异常-DayAdapter ConvertView为null

提问者: 近期获赞: 浏览人数: 发布时间:2021-02-24 09:11:16

 问:像许多ppl一样,当我单击“每日”时,我得到了空指针异常。它在Day适配器的第49行上错误

 
convertView = LayoutInflater.from(mContext).inflate(R.layout.daily_list_item,null);
与软件包文件中的相同。我运行了调试器,我发现的全部就是我已经知道的,convertView即将变为null。这是我的DayAdapter,让我知道是否还有其他有价值的信息。
 
包com.example.paxie.stormy.Adapters;
导入android.content.Context;
导入android.view.LayoutInflater;
导入android.view.View;
导入android.view.ViewGroup;
导入android.widget.BaseAdapter;
导入android.widget.ImageView;
导入android.widget.TextView;
导入com.example.paxie.stormy.R;
导入com.example.paxie.stormy.weather.Day;
/ **
 *由paxie在15年9月17日创建。
* /
公共类DayAdapter扩展BaseAdapter {
 private Context mContext;
私人日[] mDays;
public DayAdapter(Context context,Day [] days){
     mDays = days;
}
 @Override
 public int getCount(){
 
    返回mDays.length;
}
 @Override
 public Object getItem(int position){
     return mDays [position];
}
 @Override
 public long getItemId(int position){
    返回0; //我们不会使用它。标签项,以方便参考
}
 @Override
 public View getView(int position,View convertView,ViewGroup parent){
     ViewHolder持有者;
    if(convertView == null){
         //全新的
        convertView = LayoutInflater.from(mContext).inflate(R.layout.daily_list_item,null);
        持有人= new ViewHolder();
        holder.iconImageView =(ImageView)convertView.findViewById(R.id.iconImageView);
 
        holder.temperatureLabel =(TextView)convertView.findViewById(R.id.temperatureLabel);
        holder.dayLabel =(TextView)convertView.findViewById(R.id.dayNameLabel);
        convertView.setTag(holder);
    }
    其他{
        持有人=(ViewHolder)convertView.getTag();
    }
     Day day = mDays [position];
    holder.iconImageView.setImageResource(day.getIconId());
    holder.temperatureLabel.setText(day.getTemperatureMax()+“”);
    holder.dayLabel.setText(day.getDayOfTheWeek());
    返回null;
}
私有静态类ViewHolder {
     ImageView iconImageView; //默认为公开的
    TextView temperatureLabel;
 
 
    TextView dayLabel;
}
 }
 
 
 
答:您忘记在构造函数中设置mContext,这将导致LayoutInflater.from(mContext)抛出NullPointerExecption。
上一篇: 为什么不立即在首先声明它们的地方立即设置成员变量?
下一篇: 我想获得iPhone的API密钥坐标。请帮忙