2019独角兽企业重金招聘Python工程师标准>>>

//菜单menu文件夹下创建分享提供者文件
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" ><itemandroid:id="@+id/share_privder"android:actionProviderClass="android.widget.ShareActionProvider"android:orderInCategory="100"android:showAsAction="always"android:title=""/></menu>
// android:actionProviderClass="android.widget.ShareActionProvider"这个属相一定要设置对
public class MainActivity extends Activity {private ShareActionProvider provider;private ImageView imageview;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);this.imageview = (ImageView) this.findViewById(R.id.share_image);}// 点击按钮public void selectImage(View view) {// 点击从图库选择图片Intent intent = new Intent();// setAction(Intent.ACTION_PICK)另一种设置方式intent.setAction(Intent.ACTION_GET_CONTENT);// 注意不要用Intentnew出的对象来设置intent.setType("image/*");// 打开图库的意图startActivityForResult(intent, 200);// 带返回值的,选择图片后返回}// 图片返回处理方法@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);if (requestCode == 200 && resultCode == Activity.RESULT_OK) {Uri uri = data.getData();// uri通过intent传回来的// 读取图片显示,通过ContentResolver内容解析器,将uri放进去ContentResolver resolver = getContentResolver();try {InputStream is = resolver.openInputStream(uri);// 将流转换为位图Bitmap bitmap = BitmapFactory.decodeStream(is);imageview.setImageBitmap(bitmap);} catch (FileNotFoundException e) {e.printStackTrace();}// 设置分享的数据和类型Intent intentImg = new Intent();intentImg.setAction(Intent.ACTION_SEND);intentImg.setType("image/*");intentImg.putExtra(Intent.EXTRA_STREAM, uri);//要连通uri,没有uri不懂怎么连通性,即先点中图片按钮再设置数据类型provider.setShareIntent(intentImg);}}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {getMenuInflater().inflate(R.menu.share, menu);// 分享文本shareText(menu);// 分享图片shareImage(menu);return super.onCreateOptionsMenu(menu);}// 分享图片的方法public void shareImage(Menu menu) {// 分享图片还是要找到那个分享提供者类MenuItem shareItem = menu.findItem(R.id.share_privder);// 使用系统提供的一个分享类provider = (ShareActionProvider) shareItem.getActionProvider();}// 分享文本的方法public void shareText(Menu menu) {MenuItem shareItem = menu.findItem(R.id.share_privder);// 使用系统提供的一个分享类provider = (ShareActionProvider) shareItem.getActionProvider();Intent shareintent = new Intent();// 发送出去的类别shareintent.setAction(Intent.ACTION_SEND);// 注意不要用Intentnew出的对象来设置// 指定发送的数据的类型shareintent.setType("text/plain");shareintent.putExtra(Intent.EXTRA_TEXT, "分享的文本信息");// 把intent放入到分享提供这种,有一个列表出来给你选择,然后将信息放入到你选择打开的应用中provider.setShareIntent(shareintent);}
}
//布局文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:gravity="center" ><TextViewandroid:id="@+id/share_text"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="分享文本" /><ImageViewandroid:id="@+id/share_image"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignLeft="@+id/share_text"android:layout_below="@+id/share_text"android:layout_marginTop="20dp"android:src="@drawable/ic_launcher"android:onClick="selectImage"android:scaleType="centerInside" /></RelativeLayout>

转载于:https://my.oschina.net/u/2541146/blog/625279

在ActionBar显示ShareActionProvider分享文本,点击可以打开进行分享(19)相关推荐

  1. IOS富文本点击文字打开链接 特殊文字变颜色 点击文本打开链接 必须加手势

    有的时候需要实现H5的效果  一段文字 特殊几个文字变颜色  并且点击文字打开H5链接. 什么是富文本? 实际上就是图文混排,就是过去都是普通的文字,黑色的,大小一致,但是不能满足需求,最后通过富文本 ...

  2. 从零开始学前端:显示隐藏与文本溢出 --- 今天你学习了吗?(CSS:Day16)

    从零开始学前端:程序猿小白也可以完全掌握!-今天你学习了吗?(CSS) 复习:从零开始学前端:浮动 - 今天你学习了吗?(CSS:Day15) 文章目录 从零开始学前端:程序猿小白也可以完全掌握!-今 ...

  3. AD16显示所有元件文本注释

    AD16显示所有元件文本注释 第一步:打开PCB文件,如下图 第二步:鼠标选择其中的一个元件,注意是选中元件,不是选择焊点,如下所示: 第三步:把输入法切换到英文模式,输入组合键shift+F,会出现 ...

  4. fastadmin 简单的根据单选按钮显示对应的文本框

    fastadmin 简单的根据单选按钮显示对应的文本框 效果介绍:在点击添加修改时,对于一些字段只是在某种情况下才会出现 效果如图 ,其实实现很简单,只需要JQ就好 <div class=&qu ...

  5. c语言wscript.echo用法,2.4.3 用Wscript.Echo显示简单的文本信息

    2.4.3 用Wscript.Echo显示简单的文本信息 当你调试一个特别麻烦的脚本时,在某个时刻,你可能想要看看在程序运行期间,脚本的变量保存的内容是什么.然而,如果需要在一个循环中打印调试输出,或 ...

  6. 酷狗服务器显示失败怎么回事啊,酷狗音乐分享音乐失败怎么办 酷狗音乐分享音乐失败解决方法...

    对于喜欢听歌的伙伴而言,音乐是无国界的,在酷狗音乐里面可以随时播放国内外歌曲,觉得好听的歌曲还可以分享给好友听,但是最近有用户反映自己分享音乐出现失败显示,不知道如何解决的伙伴,可以在历趣看看哦! 酷 ...

  7. jquery设置文本 点击事件 追加元素 删除元素

    <!DOCTYPE html> <html><head><meta charset="utf-8"><title>< ...

  8. iOS 9应用开发教程之显示编辑文本标签文本框

    iOS 9应用开发教程之显示编辑文本标签文本框 ios9显示.编辑文本 在iOS,经常会看到一些文本的显示.文字就是这些不会说话的设备的嘴巴.通过这些文字,可以很清楚的指定这些设备要表达的信息.本节将 ...

  9. Xamarin iOS教程之显示和编辑文本

    Xamarin iOS教程之显示和编辑文本 Xamarin iOS显示和编辑文本 在一个应用程序中,文字是非常重要的.它就是这些不会说话的设备的嘴巴.通过这些文字,可以很清楚的指定这些应用程序要表达的 ...

最新文章

  1. 隐藏讨厌的桌面挂载卷图标
  2. php分页功能乱码了怎么办,51、PHP文件内容分页操作,避免乱码
  3. React-native键盘遮挡输入框问题的解决
  4. Laravel-admin hasMany表单关联提交报错字段 无详细信息错误说明
  5. JDBC(二)驱动程序类型发展历程
  6. 自己写的简易多任务系统---基于pic18fxxx
  7. 读入字符串/字符 scanf与getchar/gets区别
  8. 【MySQL快速入门】牛客网:条件查询(1)基础排序
  9. Intellij IDEA 导入Maven项目
  10. 高级商务办公软件应用【4】
  11. Informatica的元数据和数据血缘关系
  12. tensorflow获取中间变量参数值
  13. 计算机自动隐藏桌面图标,Windows 8.1 右下角图标莫名自动隐藏
  14. 如何用Python写一个小游戏(2)
  15. 雨课堂知识点总结(十六)
  16. 【论文导读】- Link Weight Prediction Using Supervised Learning Methods(使用监督学习方法的链路权重预测及其在Yelp网络中的应用)
  17. 数据结构—回溯法、子集树、排列树
  18. 计算机网络第六版勘误表,最新《深入理解计算机网络》勘误表.docx
  19. PyQT5 (四十六) 在 QTableWidget 表格中设置合并单元格 的案例
  20. 激活 MarkDownPad 2

热门文章

  1. linux之history命令
  2. 一步步揭开 原型链的面纱 面试再也不慌 原型链
  3. [译] ES6+ 中的 JavaScript 工厂函数(第八部分)
  4. 【BZOJ】1572: [Usaco2009 Open]工作安排Job
  5. HPE第四季度财报数据喜忧参半
  6. 报表工具JasperReports视频教程
  7. vs编译protobuf 3.0.0
  8. window 下Eclipse c++的开发环境配置
  9. Linux 系统故障分析与排查
  10. 你需要知道的requestAnimationFrame