- 博客(42)
- 收藏
- 关注
原创 IOS下微信好友和朋友圈分享实现
1、IOS分享到微信好友和微信朋友圈第一步,先检测微信客户端是否存在:[WXApiisWXAppInstalled];-- 这个方法返回一个bool值,来验证微信客户端是否存在第二步,跳转到微信界面(好友或者朋友圈)://创建发送对象实例 SendMessageToWXReq *sendReq = [[SendMessageToWXReqalloc] i
2016-12-13 15:22:05 4739
原创 cocos2dx 实现文字的一键复制功能(IOS、Android)
1、IOS篇(用OC和C++混编)头文件声明:public static void copy(std::string str);实现如下:void copy(std::string str) { //把string类型转换成为char* char*p=(char*)str.data(); //把char*转换成OC的NSString NS
2016-11-18 20:30:44 7501
原创 AppleScript基础语法讲解
--AppleScript变量有四种数据类型:number,string,list,record--为变量赋值应当使用set to语句: set变量名 to 变量值set xto 10set yto 10set xyto x * yset emptyStringto ""set aSpaceStringto " "set helloS
2016-08-31 16:31:42 6593
原创 cocos creator Button控件用法
Button控件用法比较简单,从控件库拖拽Button控件到场景编辑器中,我们看到Button里自带了一个label,我们不用的话,就直接将其删除即可。选中Button控件,在右侧的属性检查器中,可以查看Button的组件属性选择相对应的图片,然后在事件这里选择带有脚本的节点,第二个是选择脚本文件,第三个是选择这个脚本里所对应的函数,当点击这个按钮的时候,在这个函数里处理逻辑就可以
2016-08-26 17:13:16 24244 2
原创 cocos creator editbox控件用法
首先,新建一个空项目EditBoxDemo,打开场景在控件库选择EditBox,然后拖动到场景编辑器中,如下图:属性编辑器中可以修改此editbox中的组件属性每个属性什么意思,这里就不一一介绍了,点击这个按钮可以跳到官网的文档中进行查看。主要介绍一下editbox的事件,在上面的图片中,最后看到四个回调事件,Editing Did Began等等,具体用法如下
2016-08-26 16:44:27 21557 1
原创 cocos creator将星星游戏移植到IOS设备上
在上一节中,本人按照官网上的教程练习了一遍星星游戏,今天,把它编译到IOS设备上。首先,选择《项目》中的《构建发布》按钮弹出如下窗口:选择“发布平台”为IOS,其他选择默认设置就可以,然后点击“构建”按钮,构建完成之后,(下面这个状态显示构建完成)然后点击“编译”按钮,第一次编译的时候,时间会较长,耐心等待。也是出现上面的状态,表示编译完成,如果我们选择运行
2016-08-26 15:29:24 8333 1
原创 cocos creator第一个星星游戏
本人也是第一次接触cocos creator,现在也正处于学习阶段,按照官网的教程一点一点来练习。下面是练习官网的第一个实例:《Star.js》cc.Class({ extends: cc.Component, properties: { pickRadius: 0 }, // use this for initia
2016-08-25 16:49:22 10220
原创 cocos2dx-lua3.12 IOS内购
因为是用lua调用ios内购,所以就没有采用C++调用,而是直接用lua调用OC代码,所以就直接做的OC版,从网上找的OC支付代码,自己去调用。先说一下这个OC类的网址:http://download.csdn.net/detail/vkenchen/7219133对接的过程中,遇到以下几个问题:1) 当添加好OC类之后,编译的时候直接报“Cannot synthesize weak pr
2016-08-22 11:09:32 1637 3
原创 cocos2dx3.12-lua添加ShareSDK分享功能(朋友圈、QQ空间、微博)
因为以前对接过C++版的ShareSDK,所以这次对接起来比较轻松,然而这次对接lua版本的,所以就没有采用cocos2dx的文档,而是IOS和Android分开对接的。先说一下IOS平台:打开ShareSDK官网,找到对接IOS平台下的文档,然后按照文档上的介绍一一对接,当代码都集成好之后,在lua文件中,实现与OC互调。我是这样实现的,点击一个按钮,调用OC,贴代码:local
2016-08-16 11:24:03 2280 1
原创 lua数据存储与文件解析
1、简单介绍:cocos2dx-lua中对文件的操作都用cc.FileUtils这个类进行操作,它是单一实例。访问res目录:(fullPathForFilename(arg))local fullPathForFilename =cc.FileUtils:getInstance():fullPathForFilename(“text.txt”)。如果该文件存放在该目录的其他文件夹下,
2016-08-16 10:52:30 10008
原创 cocos2dx-lua3.12版本保存图片、截屏显示
保存图片到本地:--[[下面代码的意思是将大图plist文件中的分离出来,并保存到沙盒目录下]]local plistFile = "" --你的plist路径local pngFile = "" --你的大图路径cc.SpriteFrameCache:getInstance():addSpriteFrames(plistFile)
2016-08-01 20:01:43 4907
原创 Lua库(math、string、table)常用方法集合
1) math库math.random(os.time()) 随机种子os.time()表示当前时间,返回距离到现在的秒数,跟C++的time(NULL)一样。math.random() --返回0-1之间的随机数math.random(5) --返回1-5之间的整数(包括1和5)math.random(5, 10) --返
2016-08-01 19:33:26 2439
原创 cocos2dx3.11-lua项目声音系统
cocos2dx3.11版本中声音系统还是使用SimpleAudioEngine引擎,只不过由对其进行了一层封装:AudioEngine.preload(“bg.mp3”) --预加载背景音乐AudioEngine.playMuis
2016-07-27 15:26:23 7557 3
原创 基本控件使用(四)(WebView)
项目中,难免会遇到要做一个内嵌的网页,现Lua中,绑定好了WebView,下边看一下具体的用法:local webView = ccexp.WebView:create()webView:setContentSize(cc.size(1280, 600))webView:setScalesPageToFit(true)webView:setPosition(cc.p(640, 30
2016-07-27 15:11:40 4284
原创 基本控件使用(三)(触摸,CallFunc,Schedule)
在项目中,触摸是必不可少的,然而也需要经常屏蔽一些触摸,比如点击某个按钮弹出一个界面,此时只有这个界面上的事件可以触发,而下层的触摸就要关闭。这里本人主要用到了单点触摸:local function touchBega(touch, event) returntrueendlocal function touchMoved(touch, e
2016-07-26 20:15:24 738
原创 基本控件使用(二)(ScrollView,TableView)
今天主要讲解一下ScrollView和TableView控件的使用,话不多说,直接贴代码:1、ScrollView:local scrollView = cc.ScrollView:create()-- local function scrollViewDidZoom()-- print("ScrollViewDidZoom")-- end
2016-07-26 11:45:58 3736 1
原创 基本控件使用(一)(遮罩、HTTP请求、ControlSlider、ControlSwitch、ProgressTo)
在大厅场景中,我们只练习一些基本控件的使用:裁剪、滚动条、屏蔽触摸、tableview、scrollview、刷新控件、http请求、内嵌网页,定时器。1) 裁剪区域(公告中常用)local noticeBg = cc.Sprite:create(“hall/noticeBg.png”)noticeBg:setPosition(cc.p(size.width/2, size.he
2016-07-25 20:01:12 1153
原创 cocos2dx修改引擎代码进行lua绑定
之前,因为项目需求,需要重写一下贝塞尔曲线,因为贝塞尔曲线在执行时,没有把考虑执行体的角度增加进去,所以为了实现这一需求,现在要将贝塞尔重写一下。通过查看源码,发现BezierTo继承BezierBy,而执行体的位置发生变化,就是发生在BezierBy中update中。Vec2 currentPos = _target->getPosition();Vec2 diff = curren
2016-07-23 17:59:10 1328
原创 创建游戏的登录注册界面
首先这个界面分为登录界面和注册界面,而在这两个界面中,精灵和标签就不用多说了。剩余的用的最多的两个控件是EditBox和Menu。使用方法如下:local editName = cc.EditBox:create(cc.size(420, 70),cc.Scale9Sprite:create(“logon/editBox.png”))editName:setPosition(cc.p(60
2016-07-21 22:41:07 5408
原创 cocos2dx-3.11 使用创建Lua项目以及运行自定义场景
第一节 创建项目现在用cocos2dx3.11版本写一个捕鱼游戏,首先创建项目,在终端里输入如下指令:cd/Users/xiaosong1531/Desktop/cocos2d-x-3.11.1/tools/cocos2d-console/bin进入到bin目录之后,输入创建项目的指令:cocos newCatchFishLua –p com.yuting.CatchFishLu
2016-07-21 14:45:34 14341 2
原创 公告类型:可变的滚动视图,文字长度根据制定长度进行换行
最近由于功能的需求,写了一个容器可变的滚动视图,文字长度也是从网上找的,这个Demo的效果是这样的:在一个指定大小的背景图上边,点击按钮,出现一条信息,(每次的信息长度不固定),这条信息出现在背景图的ScrollView上,当信息没有占满ScrollView的大小时,它是不可以滚动的,然后再点击按钮,再往这条信息的下方出现一条信息,最后当信息占满ScrollView时,会自动向上滚动,Sc
2015-04-13 11:24:16 632
原创 std::string 是否包含字串
std::string str = "abcdefghijklmn"std::string str2 = "defg"判断str是否包含str2:std::string::size_type postion = str.find(str2);如果position == npos 则,不包含字串;反之,包含
2015-04-08 15:21:18 10858
原创 cocos2d-x在VS下中文显示
#include #include #include "iconv\iconv.h"#pragma comment(lib, "libiconv.lib")int GBKToUTF8(std::string & gbkStr, const char* toCode, const char* fromCode){iconv_t iconvH;iconvH = icon
2015-01-30 16:28:35 453
原创 cocos2d-x2.2实现椭圆运动,参数为中心点坐标和长半轴、短半轴
CCAction运动中没有实现椭圆运动或者圆周运动,于是在网上找了很多相关帖子,有一个CCCircleBy可以实现圆周运动,但是当使用CCRepeatForever循环运动时,总是会卡一下,所以在网上有找了一个实现椭圆运动的例子,当长半轴和短半轴相等时,就是圆周运动,这个循环运动倒是不卡。#include "../actions/CCActionInterval.h" //包含系统延时类动
2014-12-03 14:51:07 1386
原创 使用CCRenderTexture来是实现游戏的暂停
在手机游戏中,经常会有暂停按钮,使游戏处于暂停状态,那么怎样用Cocos2d-x实现呢?下面看一下在cocos2d-x中CCRenderTexture的用法:CCRenderTexture类主要是用来动态创建纹理1.指定要创建的纹理的宽高。2.调用begin()方法//这个方法会启动OpenGL,并且接下来,任何绘图的命令都会渲染到CCRenderTexture中,而不
2014-08-25 10:44:00 575
原创 使用CCAnimate、CCAnimation、CCTextureCache、CCTexture2D来实现动画效果
使用CCTexture2D来创建动画效果,前提资源是有一张合成的大图下面看具体的做法:CCSprite* heroSprite = CCSprite::create();heroSprite -> setAnchorPoint(ccp(0.35,0.3));heroSprite -> setPosition(ccp(heroSprite -> getContentSize().wi
2014-08-22 15:35:40 869
原创 在cocos2d-x中CCTableView控件的使用方法
头文件需要继承CCTableViewDataSource和CCTableViewDelegate//CCScrollViewDelegatevirtual void scrollViewDidScroll(CCScrollView* view){};virtual void scrollViewDidZoom(CCScrollView* view){};//CCTableVie
2014-07-25 16:38:23 939
原创 使用Cocos2D-x引擎在Mac下开发运行在iOS设备上的《植物大战僵尸》第一篇
今天,让我们一起来看一下关于使用Cocos2D-x引擎开发运行在iOS设备上的《植物大战僵尸》简易版本,我所做的就设计了两关,开始动画、菜单界面、游戏界面、游戏成功失败界面,菜单界面上有开始游戏按钮、退出游戏按钮、关于按钮、帮助按钮、游戏界面上有暂停和返回按钮。所用到的技术等做完之后再进行总结,现在就从开始一点一点讲述我所做的过程。首先,环境搭建这方面我就不多说了,不懂的可以网上找一些资料,这
2014-04-09 15:02:16 2335
原创 数据持久化
iOS中可以有四种持久化数据的方式:属性列表、对象归档、SQLite3、和Core Data。一、关于属性列表的使用iOS应用程序采用沙盒原理设计,每个应用程序都有自己的3个目录(Documents,Library,tmp),互相之间不能访问。Documents存放应用程序的数据。Library目录下面还有Preferences和Caches目录,Pre
2014-02-08 14:27:51 815
原创 UITableView应用1
文本讲述的是UITableViewDelegate协议和UITableViewDataSource协议,以及UITableView的使用
2014-01-18 13:57:51 931
原创 导航视图控制器中如何定义按钮以及视图之间的切换
UINavigationController 相关知识总结在"NavigationAppDelegate.m"文件中:包含"FirstViewController.h"头文件在-(BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOp
2014-01-16 16:02:29 810
原创 当应用程序开始执行时,系统方法调用的先后顺序
-(BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ //在应用程序首次加载到内存中时调用此方法,只被执行一次,当应用程序由后台或者非活跃状态进入到前台或者活跃状态时,此方法不被调用。} - (void)applic
2014-01-15 19:27:35 798
原创 KVC模式讲解和Block语法
KVC键值编码,使用完整实例:#import @interface Course : NSObject{ NSString* courseName;}- (NSString*)description;@end #import "Course.h"@implementation Course- (NSString*)description{
2014-01-15 19:26:07 612
原创 iphone新手上路: KVC模式和iPhone基本控件的使用
MVC是一种设计模式,所谓设计模式就是解决某一特定问题的方案。MVC是解决具有UI的应用系统的成熟解决方案,在Cocoa应用系统中严格按照该模式实现。M-Model(模型)是应用系统中与视图对于部分的数据。V-View(视图)是应用系统中用户看到并与之交互的界面。C-Controller(控制器)是应用系统中起到控制器作用,接受用户事件,显示数据等,与视图进行交互等。采用MVC
2014-01-13 20:51:34 730
原创 怎样创建表格---UITableView UITableViewDataSource UITableViewDelegate .
创建一个表格框架,在默认生成的代码中进行编辑,下面一一介绍相关的方法:当运行默认表格时,首先会调用-(NSInteger)numberOfSectionsInTableView:(UITableView*)tableView //这个方法是控制表格加载时可以加载几个区域,默认值是1,但是可以修改{ return 1;}之后回调用- ( NSInt
2013-09-11 15:50:45 710
原创 KVC设计模式讲解
在Objective-c语言中,可以用@property和@synthesize来创建实例变量的属性,因此对象访问的时候可以直接使用点语法。 但是,如果不声明属性,如何访问到对象的实例变量呢?KVC就解决了这一问题。 KVC 全称Key-Value-Coding,也就是键值编码。先看下面一个例子: @interface Student : NSObje
2013-09-05 16:21:31 807
原创 C++中赋值运算符能不能被派生类继承
如果基类中重写了赋值运算符重载函数,派生类中没有重写的话,那么当用派生类调用赋值运算符时,基类的运算符重载函数会被调用,而且派生类的成员也会进行赋值。 如果基类中重写了赋值运算符重载函数,派生类中也重写了的话,那么如果派生类的赋值运算符重载函数里没有显示的调用的基类的赋值运算符重载函数,那么基类的赋值运算符重载函数是不会被调用的,当派生类对象调用赋值运算符重载函数时,基类部分的值是不
2013-09-03 14:16:23 2389
原创 Objective-c NSFileManager类和NSFileHandle类的使用
NSFileManager* fm = [NSFileManager defaultManager]; //判断一个文件是否存在,返回一个BOOL值 if([fm fileExistsAtPath:@"/tmp/AddressCard.m"]) { NSLog(@"exist"); }
2013-09-03 14:11:03 828
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人