【问题标题】:Open Dialog via dynamic menu通过动态菜单打开对话框
【发布时间】:2012-08-24 09:19:19
【问题描述】:

当我在动态创建的菜单中单击项目:“关于”时,如何打开具有某些 html 格式和超文本链接支持的对话框(在默认浏览器中打开该链接)? 另外,我如何制作 SHARE 功能,这样如果有人点击:“SHARE”项目,它会分享指向该 APK 的链接,或者通过蓝牙发送?

这是我在 MainActivity 中的:

private static final int NEW_MENU_ID=Menu.FIRST+1;
@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);

        menu.add(0, NEW_MENU_ID, 0, "ABOUT");
        menu.add(0, NEW_MENU_ID, 0, "SHARE");

        return true;
    }

它应该是这样的:

感谢您的帮助!

【问题讨论】:

    标签: android menu dialog


    【解决方案1】:

    实际上,有两个大而完全不同的问题和提供的代码太少。

    首先,您应该在 onCreateOptionsMenu 中提供不同的选项 id(让它们成为 ID_ABOUT == 0 和 ID_SHARE == 1)覆盖 onOptionsItemSelected(),如下所示:

    @Override
    public boolean onOptionsItemSelected (MenuItem item) {
        switch(item.getItemId()) {
        case ID_ABOUT:
            handleAbout();
            break;
    
        case ID_SHARE:
            handleShare();
            break;
        }
    }
    

    不应定义 handleAbout() 和 handleShare()(这是您的问题):

    • 关于:可能,最简单的方法是创建仅包含一个WebView 的附加活动。第一个活动将从 handleAbout() 开始 AboutActivity;
    • 分享:这是很常见的任务。请参考安卓文档here,例如this question

    【讨论】:

      【解决方案2】:
      1. how could I open dialog with some html formatting and hypertext link support (open that link in default browser), when I click on item: "ABOUT" in my dynamically created menu?
      

      看看这个 SO 问题:Android hyperlinks on TextView in custom AlertDialog not clickable

      2. how I can make SHARE function, so that if anybody click on: "SHARE" item, it will either share link to that APK, or send it over bluetooth?
      

      Android IntentIntent.ACTION_SEND 结合使用。它将在处理 SHARE Intent 的设备上的可用应用程序上共享 .apk 文件的链接。

      并通过蓝牙发送 APK .. 使用与 ACTION_SEND 操作相同的 Intent 或您必须实现蓝牙文件传输代码..

      看看这个 SO 问题:bluetooth file transfer in android

      【讨论】:

        猜你喜欢
        • 2021-09-11
        • 1970-01-01
        • 2012-10-24
        • 2017-05-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-05-18
        相关资源
        最近更新 更多