有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Android Udacity:ResourceException 0xfffffffff

This is the link to my app这是我从udacity website制作的一个项目

我正在使用回收器视图而不是列表视图。。。大多数情况下,其他一切都是一样的
单击工具栏上的向上按钮时会出现错误
它给出了一个

resource not found exception

但是,当按下物理返回按钮时,其他一切似乎都正常
我似乎无法找出错误的原因,找不到哪个资源,以及为什么它只在单击向上按钮而不单击后退按钮时出现

My CursorRecyclerViewAdapter 

    Context mContext;
    public final static int View_Type_Today = 0 ;
    public final static int View_Type_Future = 1 ;

    public MyListCursorAdapter(Context context,Cursor cursor){
        super(context,cursor);
        mContext = context;
    }



    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        int layoutID= -1;
        if(viewType==View_Type_Today){
            layoutID = R.layout.list_item_forecast_today;
        }
        else{
            layoutID = R.layout.list_item_forecast;
        }
        View itemView = LayoutInflater.from(parent.getContext())
                .inflate(layoutID, parent, false);
        ViewHolder vh = new ViewHolder(itemView);
        return vh;
    }

    @Override
    public void onBindViewHolder(final ViewHolder holder, final Cursor cursor) {
        boolean isMetric = Utility.isMetric(mContext);
        holder.tvDate.setText(Utility.getFriendlyDayString(mContext,cursor.getLong(COL_WEATHER_DATE)));
        holder.low.setText(Utility.formatTemperature(mContext,cursor.getDouble(COL_WEATHER_MIN_TEMP),isMetric));
        holder.high.setText(Utility.formatTemperature(mContext,cursor.getDouble(COL_WEATHER_MAX_TEMP),isMetric));
        holder.desc.setText(getDesc(cursor));
        final int position = cursor.getPosition();
        int viewType = getItemViewType(position);
        switch (viewType) {
            case View_Type_Today: {
                // Get weather icon
                int Res = Utility.getArtResourceForWeatherCondition(cursor.getInt(COL_WEATHER_CONDITION_ID));
                holder.iv.setImageResource(Res);
                    break;
            }
            case View_Type_Future: {
                // Get weather icon
                holder.iv.setImageResource(Utility.getIconResourceForWeatherCondition(
                        cursor.getInt(activity_main_fragment.COL_WEATHER_CONDITION_ID)));
                break;
            }
        }
        holder.container.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                cursor.moveToPosition(position);
                String locationSetting = Utility.getPreferredLocation(mContext);
                Intent in = new Intent(mContext,DetailActivity.class).setData(WeatherContract.WeatherEntry
                        .buildWeatherLocationWithDate(locationSetting,cursor.getLong(COL_WEATHER_DATE)));
                mContext.startActivity(in);
            }
        });
    }
    private String getDesc(Cursor cursor){
        return cursor.getString(COL_WEATHER_DESC);
    }

    @Override
    public int getItemViewType(int position) {
        return (position ==0) ? View_Type_Today : View_Type_Future;
    }
}

Viewholder类

  TextView tvDate;
  TextView high;
  TextView low;
  TextView desc;
        View container;
        ImageView iv;
        public ViewHolder(View itemView) {
            super(itemView);
            desc= (TextView)itemView.findViewById(R.id.list_item_forecast_textview);
            high= (TextView)itemView.findViewById(R.id.list_item_high_textview);
            low= [enter image description here][1](TextView)itemView.findViewById(R.id.list_item_low_textview);
            tvDate= (TextView)itemView.findViewById(R.id.list_item_date_textview);
            iv = (ImageView) itemView.findViewById(R.id.list_item_icon);
            container = itemView;
        }

共 (0) 个答案