android – 将URL从WebView传递到ShareActionProvider?

android – 将URL从WebView传递到ShareActionProvider?,第1张

概述我想在WebView中获取用户用户所在的任何页面,并允许他们将这些URL与FaceBook / etc共享为ACTION_SEND意图. 我试过这个,但显然在onCreateOptionsMenu中不存在这个URL.如何将其移动到onOptionsItemsSelected? private ShareActionProvider mShareActionProvider;@Overridep 我想在WebVIEw中获取用户用户所在的任何页面,并允许他们将这些URL与FaceBook / etc共享为ACTION_SEND意图.

我试过这个,但显然在onCreateOptionsMenu中不存在这个URL.如何将其移动到onoptionsItemsSelected?

private ShareActionProvIDer mShareActionProvIDer;@OverrIDepublic boolean onoptionsItemSelected(MenuItem item) {    // Todo auto-generated method stub    return super.onoptionsItemSelected(item);}   @OverrIDepublic boolean onCreateOptionsMenu(Menu menu) {     getMenuInflater().inflate(R.menu.activity_main,menu);     MenuItem item = menu.findItem(R.ID.menu_item_share);     mShareActionProvIDer = (ShareActionProvIDer)item.getActionProvIDer();     mShareActionProvIDer.setShareHistoryfilename(       ShareActionProvIDer.DEFAulT_SHARE_HISTORY_file_name);     mShareActionProvIDer.setShareIntent(createShareIntent());     return true;   } private Intent createShareIntent() {      Intent shareIntent = new Intent(Intent.ACTION_SEND);            shareIntent.setType("text/plain");            shareIntent.putExtra(Intent.EXTRA_TEXT,web.getUrl());            return shareIntent;        }
解决方法 上面的代码不起作用,因为onCreateOptionsMenu只调用一次,第一次显示选项菜单.

解决这个问题非常简单.当调用onoptionsItemSelected时,我们正在构建我们的Intent.这是当选择了膨胀菜单的任何资源时.如果所选项目是共享资源,则执行shareURL,现在构建并启动Intent.

@OverrIDepublic boolean onCreateOptionsMenu(Menu menu) {    getMenuInflater().inflate(R.menu.activity_main,menu);    return true;}@OverrIDepublic final boolean onoptionsItemSelected(MenuItem item) {    switch (item.getItemID()) {        case R.ID.menu_item_share:            shareURL();    }    return super.onoptionsItemSelected(item);}private voID shareURL() {    Intent shareIntent = new Intent(Intent.ACTION_SEND);    shareIntent.setType("text/plain");    shareIntent.putExtra(Intent.EXTRA_TEXT,web.getUrl());    startActivity(Intent.createChooser(shareIntent,"Share This!"));}

我没有测试上面的代码示例.既不是在实际设备上也不是在Java编译器上.不过它应该可以帮助您解决问题.

总结

以上是内存溢出为你收集整理的android – 将URL从WebView传递到ShareActionProvider?全部内容,希望文章能够帮你解决android – 将URL从WebView传递到ShareActionProvider?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1129857.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存