博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Adding an Easy Share Action 添加一个简单的共享行动
阅读量:4046 次
发布时间:2019-05-24

本文共 2121 字,大约阅读时间需要 7 分钟。

Implementing an effective and user friendly share action in your is made even easier with the introduction of in Android 4.0 (API Level 14). An , once attached to a menu item in the action bar, handles both the appearance and behavior of that item. In the case of , you provide a share intent and it does the rest.

Note:  is available starting with API Level 14 and higher.

http://blog.csdn.net/sergeycao

Update Menu Declarations

To get started with , define the android:actionProviderClass attribute for the corresponding <item> in your file:

...

This delegates responsibility for the item's appearance and function to . However, you will need to tell the provider what you would like to share.

Set the Share Intent

In order for to function, you must provide it a share intent. This share intent should be the same as described in the lesson, with action and additional data set via extras like and . To assign a share intent, first find the corresponding while inflating your menu resource in your or . Next, call to retreive an instance of . Use to update the share intent associated with that action item. Here's an example:

private ShareActionProvider mShareActionProvider;...@Overridepublic boolean onCreateOptionsMenu(Menu menu) {    // Inflate menu resource file.    getMenuInflater().inflate(R.menu.share_menu, menu);    // Locate MenuItem with ShareActionProvider    MenuItem item = menu.findItem(R.id.menu_item_share);    // Fetch and store ShareActionProvider    mShareActionProvider = (ShareActionProvider) item.getActionProvider();    // Return true to display menu    return true;}// Call to update the share intentprivate void setShareIntent(Intent shareIntent) {    if (mShareActionProvider != null) {        mShareActionProvider.setShareIntent(shareIntent);    }}

You may only need to set the share intent once during the creation of your menus, or you may want to set it and then update it as the UI changes. For example, when you view photos full screen in the Gallery app, the sharing intent changes as you flip between photos.

For further discussion about the object, see the guide.

你可能感兴趣的文章
利用负载均衡优化和加速HTTP应用
查看>>
消息队列设计精要
查看>>
高可用性系统在大众点评的实践与经验
查看>>
美团酒店Node全栈开发实践
查看>>
分布式缓存负载均衡负载均衡的缓存处理:虚拟节点对一致性hash的改进
查看>>
分布式存储系统设计(1)—— 系统架构
查看>>
分布式存储系统设计(2)—— 数据分片
查看>>
架构师之路--视频业务介绍,离线服务架构和各种集群原理
查看>>
mysql、zookeeper、redis和elasticsearch主从同步机制
查看>>
MySQL数据库的高可用方案总结
查看>>
git 配置多个SSH-Key
查看>>
nodejs真的是单线程吗?
查看>>
JavaScript 模板引擎实现原理解析
查看>>
如何理解和熟练运用js中的call及apply?
查看>>
koa-源码分析
查看>>
co模块用法及分析
查看>>
深入理解Node.js垃圾回收与内存管理
查看>>
深入剖析Nodejs的异步IO
查看>>
MySQL for Mac安装和启动
查看>>
【mysql】查询某一年 某一月 某一天的数据 转载 2017年05月18日 15:22:51
查看>>