yifengqing 2016-04-09 10:35
浏览 989

android新手有段代码没看懂,help me please!小米便签的源码

@Override
protected void onCreateContextMenu(ContextMenu menu) {
    if (getText() instanceof Spanned) {
        int selStart = getSelectionStart();
        int selEnd = getSelectionEnd();

        int min = Math.min(selStart, selEnd);
        int max = Math.max(selStart, selEnd);

        final URLSpan[] urls = ((Spanned) getText()).getSpans(min, max, URLSpan.class);
        if (urls.length == 1) {
            int defaultResId = 0;
            for(String schema: sSchemaActionResMap.keySet()) {
                if(urls[0].getURL().indexOf(schema) >= 0) {
                    defaultResId = sSchemaActionResMap.get(schema);
                    break;
                }
            }

            if (defaultResId == 0) {
                defaultResId = R.string.note_link_other;
            }

            menu.add(0, 0, 0, defaultResId).setOnMenuItemClickListener(
                    new OnMenuItemClickListener() {
                        public boolean onMenuItemClick(MenuItem item) {
                            // goto a new intent
                            urls[0].onClick(NoteEditText.this);
                            return true;
                        }
                    });
        }
    }
    super.onCreateContextMenu(menu);
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 如何在scanpy上做差异基因和通路富集?
    • ¥20 关于#硬件工程#的问题,请各位专家解答!
    • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
    • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
    • ¥30 截图中的mathematics程序转换成matlab
    • ¥15 动力学代码报错,维度不匹配
    • ¥15 Power query添加列问题
    • ¥50 Kubernetes&Fission&Eleasticsearch
    • ¥15 報錯:Person is not mapped,如何解決?
    • ¥15 c++头文件不能识别CDialog