首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用RecyclerView设置墙纸

使用RecyclerView设置墙纸
EN

Stack Overflow用户
提问于 2015-05-14 06:53:06
回答 1查看 149关注 0票数 0

我需要设置一个图像作为墙纸使用RecyclerView。在我的适配器中,我使用了以下代码:

代码语言:javascript
运行
复制
@Override
    public void onBindViewHolder(ViewHolder viewHolder, final int i) {
        final GridItem nature = mItems.get(i);
        viewHolder.tvspecies.setText(nature.getName());
        viewHolder.imgThumbnail.setImageResource(nature.getThumbnail());

        viewHolder.imgThumbnail.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                Log.i("CLick",nature.toString());
                try {
                    wallpaper.setResource(mItems.get(i));
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
        });
    }

所以我应该把图片设置为墙纸,但是在"setResource“onClick下面我有这个错误:

代码语言:javascript
运行
复制
The method setResource(int) in the type WallpaperManager is not applicable for the arguments (GridItem)

如何将适配器中选择的项目设置为墙纸?

EN

回答 1

Stack Overflow用户

发布于 2015-05-15 02:09:52

你的程序不能工作的原因是setResource(int)方法接受int类型作为参数,而不是GridItem类型。

documentation阅读更多信息

将当前系统墙纸更改为给定资源中的位图。资源作为原始数据流打开并复制到墙纸中;它必须是有效的PNG或JPEG图像。

还要确保您的应用程序具有在清单中设置墙纸的权限

此方法要求调用方持有权限SET_WALLPAPER。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30226526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档