对于分享,我们基本就是微信,QQ之类的分享,而且分享出去的都是html网页,对于很多地方需要用到分享一个卡片出去该怎么处理呢?卡片上的内容如果需要自己定义,自己编写内容又该怎么处理呢?首先,我用到的是友盟的分享,在发现他的文档里面有说明,描述的方式中有一种说的是可以分享一个bitmap,这对于Android而言是很好的消息,我们完全可以把一个layout转变成一个bitmap,然后通过友盟提供的方法来分享,当然,在转换之前,必须要在layout上填写自己想要的文字图片之类的,那么这个layout转换的图片就可以成为自己想要的方式了。接下来提供代码:
//将布局转换为View类型对象
/* View view = getLayoutInflater().inflate(R.layout.image_share_layout, null);
TextView tv_text = (TextView) view.findViewById(R.id.tv_text);
tv_text.setText("友盟的分享哦哦哦");*/
//打开图像缓存
rl_card.setDrawingCacheEnabled(true);
//测量View大小
/* rl_card.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED),
View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
发送位置和尺寸到View及其所有的子View
rl_card.layout(0, 0, rl_card.getMeasuredWidth(), rl_card.getMeasuredHeight());*/
Bitmap bitmapss = rl_card.getDrawingCache();
UMImage imagesss =newUMImage(InviteCardActivity.this, bitmapss);//bitmap文件
newShareAction(InviteCardActivity.this)
.setPlatform(SHARE_MEDIA.QQ)
.setCallback(umShareListener)
.withMedia(imagesss)
.share();
这里我用的layout就是activity里面的,当然,也可以自己创建一个layout,方式就需要inflate一下,将上面代码的注释打开尝试一下就行了。分享邀请卡,不要忘绘画布局上面走,这样只会越来越繁琐。希望这个方法对大家有帮助。
csdn项目地址:http://blog.csdn.net/greatdaocaoren/article/details/73741943