android分享文本和图片

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        final String strDlgTitle="对话框标题 - 分享文字";
        final String strSubject="我的主题";
        final String strContent="我的分享内容";
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button button1=(Button) findViewById(R.id.button1);
        Button button2=(Button) findViewById(R.id.button2);
        assert button1!=null;
        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                shareText(strDlgTitle,strSubject,strContent);
            }
        });

        assert button2!=null;
        button2.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                String DlgTitle="对话框标题 - 分享图片";
                String imgPath= Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)
                        + File.separator+"003.jpg";
                Uri imageUri=Uri.fromFile(new File(imgPath));
                shareImg(DlgTitle,strSubject,strContent,imageUri);
            }
        });

    }

    private void shareText(String dlgTitle,String subject,String content) {
        if (content==null || "".equals(content)) {
            return;
        }
        Intent intent=new Intent(Intent.ACTION_SEND);
        intent.setType("text/plain");
        if(subject!=null && !"".equals(subject)) {
            intent.putExtra(Intent.EXTRA_SUBJECT,subject);
        }
        intent.putExtra(Intent.EXTRA_TEXT,content);

        if (dlgTitle!=null && !"".equals(dlgTitle)) {
            startActivity(Intent.createChooser(intent,dlgTitle));
        } else {
            startActivity(intent);
        }
    }
    private void shareImg(String dlgTitle,String subject,String content,
                          Uri uri) {
        if (uri==null) {
            return;
        }
        Intent intent=new Intent(Intent.ACTION_SEND);
        intent.setType("image/*");
        intent.putExtra(Intent.EXTRA_STREAM, uri);
        if (subject!=null && "".equals(subject)) {
            intent.putExtra(Intent.EXTRA_SUBJECT,subject);
        }
        if (content!=null && !"".equals(content)) {
            intent.putExtra(Intent.EXTRA_TEXT,content);
        }
        if (dlgTitle!=null && !"".equals(dlgTitle)) {
            startActivity(Intent.createChooser(intent,dlgTitle));
        } else {
            startActivity(intent);
        }
    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值