0

我想在我的适配器的 getView 中访问 SharedPref。我在 MODE_PRIVATE = `MODE_PRIVATE 无法解析为变量' 上收到错误

SharedPreferences sharedPreferences = getPreferences(MODE_PRIVATE);

我通过这样做解决了这个问题mContext.MODE_PRIVATE,但是在 getPreferences = getPreferences(int) is undefined 上出现错误。我怎样才能解决这个问题?

编辑

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        if(convertView == null) {
            convertView = mInflator.inflate(R.layout.griditemlayout, parent, false);
        }
        TextView gridtv;
        gridtv = (TextView) convertView.findViewById(R.list.gridtext);


        SharedPreferences sP = ((Object) mContext).getPreferences(mContext.MODE_PRIVATE);
        Boolean b = sP.getBoolean(s[position], false);

        ...

        return convertView;
    }
4

3 回答 3

0

此错误是因为您Context转换为ObjectandObject没有getPreferences方法。尝试仅使用上下文。

UPD:我错了,尝试使用Activity参考而不是Context

于 2013-07-16T16:15:45.257 回答
0

您正在将 mContext 上下文转换为不包含 getPreferences() 方法的对象。修复转换问题后,导入上下文引用并尝试仅使用 getPreferences(Context.MODE_PRIVATE)。

于 2013-07-16T16:19:10.557 回答
0

首先使用 Context 而不是 ((Object) mContext)。通过上下文调用您的适配器使用整数值 1 而不是MODE_PRIVATE

于 2013-07-16T16:20:22.470 回答