安卓开发笔记——通过SharePreferences实现Adapter向Activity传递数据

Mora ·
更新时间:2024-11-15
· 560 次阅读

笔者在实现仿京东商品分类功能时,需要点击右边商品小类(RightAdapter)跳转到相应的商品搜索列表(SortSearchActivity),为了实现这一功能,需要解决两个问题:

1.为RightAdapter中的商品小类设置监听,通过Intent实现界面的跳转;

2.跳转之后将所点击项目的值(此处为“oppo”)传给相应Activity(此处为SortSearchActivity),实现搜索并将商品详情显示出来。

具体实现效果如下图所示(点击oppo):
在这里插入图片描述
在这里插入图片描述

1.如何解决界面跳转问题,通过Context实现:

Intent intent = new Intent(mContext, SortSearchActivity.class); mContext.startActivity(intent);

2.如何解决传值问题,通过SharePreferences实现:

RightAdpter(此处kindItemBean.getName()为所需要的传递的数据):

SharedPreferences sp = mContext.getSharedPreferences("data", MODE_PRIVATE); //获取编辑器 SharedPreferences.Editor editor = sp.edit(); //存入String型数据 editor.putString("goodsname", kindItemBean.getName()); Log.i(TAG, "goodsname:" + sp); //提交修改,否则不生效 editor.commit();

SortSearchActivity:

//获取分类界面点击的物品,展示出搜索结果 SharedPreferences sp = getSharedPreferences("data", MODE_PRIVATE); //第二个参数为缺省值,如果不存在该key,返回缺省值 String goodsname = sp.getString("goodsname", ""); Log.i(TAG, "goodsname:" + goodsname); etSearch.setHint(goodsname); //etSearch为搜索框 goodsKeyWord = goodsname; //goodsKeyWord为搜索关键字
作者:Kevin&Amy



数据 activity adapter

需要 登录 后方可回复, 如果你还没有账号请 注册新账号