Cocos2dx 复制文本到剪切板(Android 和 ios)

Cocos2dx 复制文本到剪切板(Android 和 ios)

至于c++调用java lua调用java 等方法这里不介绍了。下面本人真机亲测。如果有问题请留言交流。

1.Android

实现方式主要看 ClipboardManager

ClipboardManager cmb = (ClipboardManager)

getSystemService(CLIPBOARD_SERVICE);
cbm.setText(et.getText().toString());

1、参考文档:Android 复制文本内容到系统剪贴板的最简单实践

ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);

cm.setText(要复制的文本内容);

源码分享

Cocos2dxHelper.java 中添加

import android.content.ClipboardManager; //导入需要的库


    static public int copyToClipboard(final String text)
    {
        try
        {
            //Log.d("cocos2dx","copyToClipboard " + text);
            Runnable runnable = new Runnable() {
                public void run() {
                    android.content.ClipboardManager clipboard = (android.content.ClipboardManager) Cocos2dxActivity.getContext().getSystemService(Context.CLIPBOARD_SERVICE);
                    android.content.ClipData clip = android.content.ClipData.newPlainText("Copied Text",text);
                    clipboard.setPrimaryClip(clip);
                }
            };
            //getSystemService运行所在线程必须执行过Looper.prepare()
            //否则会出现Can't create handler inside thread that has not called Looper.prepare()
            ((Cocos2dxActivity)sActivity).runOnUiThread(runnable);

        }catch(Exception e){
           // Log.d("cocos2dx","copyToClipboard error");
            e.printStackTrace();
            return -1;
        }
        return 0;
    }

2、ios-复制字符串到剪贴板

 /*复制到剪切板*/
int Application::copyToClipboard(const std::string &text){
    //把char*转换成OC的NSString
    NSString *nsMessage= [NSString stringWithUTF8String:text.c_str()];
    //获得ios的剪切板
    UIPasteboard *pasteboard = [UIPasteboard generalPasteboard];
    //改变剪切板的内容
    pasteboard.string = nsMessage;
    return 0;
}

参考文档:

http://www.jianshu.com/p/9d84c70b9742

相关文章

操作步骤 1、创建cocos2d-x工程 2、新建 Scene1.cpp Scene1.h Scene1.h代码 #ifndef __SCENE1_H__#defi...
开发环境:OS(WINDOWS 8.1 X64 企业版) cocos2d-x 2.2.1 vs2010 想给vs安装上cocos的模版,执行Install...
把创建项目做成一个批处理,当创建项目时可以省时省力很多。 操作步骤 1、在 E:cocos2d-x-2.2.1toolspr...
https://www.cnblogs.com/JiaoQing/p/3906780.html 四个响应函数 1 EventListenerPhysicsContact* evC...
转载于 http://www.cnblogs.com/kenkofox/p/3926797.html 熟悉js的dom事件或者flash事件的,基本都能立...
ScrollView(滚动容器)加载大量item时会导致游戏界面的卡顿,严重时整个界面会出现卡死的情况。最近项...