Android中实现一个简单的分享功能
来源:互联网 发布:淘宝隐藏优惠券代码 编辑:程序博客网 时间:2024/06/05 19:34
使用Android 4.0 (API Level 14)中提供的 ActionProvider可以在你的App的ActionBar上增加一个带有外观显示及分享功能的分享按钮。当一个ActionProvider被加入到你的ActionBar的菜单中,他就具备了相应的外观及功能。在使用ShareActionProvider的情况下,你只需要提供一个要分享的Intent,它就会为你把剩下的事情做好。
* ShareActionProvider只能在Android API Level 14或更高以上使用*
更新你的Menu的XML文件
要使用ShareActionProvider就要在你的Menu的item项中添加 android:actionProviderClass属性。
<menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/menu_item_share" android:showAsAction="ifRoom" android:title="Share" android:actionProviderClass= "android.support.v7.widget.ShareActionProvider" /> ...</menu>
接下来就只需要你告诉ShareActionProvider你要分享的内容了。
设置你的Intent
为了让ShareActionProvider 实现分享功能,你必须提供一个要用于分享的Intent,这个Intent使用 ACTION_SEND动作,并且附加数据为EXTRA_TEXT 或 EXTRA_STREAM。要把Intent给到ShareActionProvider你还要从你的Activity或Fragment中取得菜单项的资源,然后使用 MenuItem.getActionProvider()获得ShareActionProvider实例,最后使用setShareIntent()方法。
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) MenuItemCompat.getActionProvider(Item); Intent intent = new Intent(Intent.ACTION_SEND); intent.putExtra(Intent.EXTRA_TEXT, "The Text you want share"); intent.setType("text/plain"); Intent.createChooser(intent, "Share Links"); setShareIntent(intent); // Return true to display menu return true;}// Call to update the share intentprivate void setShareIntent(Intent shareIntent) { if (mShareActionProvider != null) { mShareActionProvider.setShareIntent(shareIntent); }}
以上程序均在AS2.2.3及Android7.0中调试运行正常,官方教材里使用的库是android.widget.ShareActionProvide,实际使用发现不能正常运行,所以程序中使用的是android.support.v7.widget.ShareActionProvider。
- Android中实现一个简单的分享功能
- Android中最简单的分享功能
- Android中“分享”功能的实现
- Android中“分享”功能的实现
- Android中“分享”功能的实现
- Android中“分享”功能的实现
- Android中“分享”功能的实现
- Android中“分享”功能的实现
- Android中“分享”功能的实现
- Android系统中分享功能的实现
- Android中“分享”功能的实现
- android中实现应用程序的分享功能
- Android中“分享”功能的实现
- Android中“分享”功能的实现
- Android中“分享”功能的实现
- Android中“分享”功能的实现
- Android中短信分享功能的实现
- android简单的分享功能
- 区块链和人工智能技术能否加速物联网经济的到来?
- jsp与el
- 排序算法(二):交换排序
- PAT——1056. 组合数的和(15)
- 关于使用dbcp1.4出现的No suitable driver异常的问题!
- Android中实现一个简单的分享功能
- java红包算法·返回List<Double>
- 2017-10-31数据库编程sql-day2笔记
- vs2015使用MinGW编译的动态库
- Go?Docker?技术人快速学习新技术
- 如何利用碎片化时间学习技术?
- K-近邻:改进约会网站的配对效果
- 导入文件的三种方式及分析web服务日志计算元素字节大小案例
- IDEA的使用