上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 13 下一页
摘要: from://http://www.cnblogs.com/hnrainll/archive/2011/12/29/2305582.html-------------------------------- 观察者模式(Observer) --------------------------------(1)基本概念:观察者模式属于行为型模式,其意图是定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这一个模式的关键对象是目标(Subject)和观察者(Observer)。一个目标可以有任意数目的依赖它的观察者,一旦目标的状态发生改变,所有的 阅读全文
posted @ 2013-09-24 09:39 wanqi 阅读(525) 评论(0) 推荐(0) 编辑
摘要: from://http://blog.csdn.net/musicvs/article/details/7948627代码混淆与反射的冲突反编译Android的代码,大部分人都知道了,防反编译的方法也大部分都知道了(尽管它不一定一直有效,但起码像我这种水平的人,没办法看到混淆之后的Java代码, 最可恶的是没有注释= =)。最近才发现,我的代码在很久之后设置了混淆,也在很久之前不知道什么时候不小心把代码混淆给弄没了(好吧,你可以去反编译我的项目了,我不介意,因为代码很烂,实在是烂)。于是,这两个又在搞混淆代码了,混淆代码的方法很简单:1.在项目下新建一个文件,命名为“proguard.cfg” 阅读全文
posted @ 2013-09-16 13:46 wanqi 阅读(14944) 评论(0) 推荐(0) 编辑
摘要: 转载请注明,原文地址:http://blog.csdn.net/musicvs/article/details/8551066正文:1.不调用update函数,调用自己的函数其实原理是一样的,我们调用scheduleUpdate的时候,系统默认每帧去调用update函数,但如果我们想调用自己的函数呢?很简单,先给HelloWorldScene添加一个函数:[cpp]view plaincopyprint?private:/*自定义的update函数*/voidMutUpdate(floatfDelta);同样在函数里打日志:[cpp]view plaincopyprint?voidHelloW 阅读全文
posted @ 2013-09-16 13:37 wanqi 阅读(14247) 评论(0) 推荐(0) 编辑
摘要: 转载请注明,原文地址:http://blog.csdn.net/musicvs/article/details/8689345正文:1.为什么会有retain?C++和Java不一样,Java有一套很方便的垃圾回收机制,当我们不需要使用某个对象时,给它赋予null值即可。而C++new了一个对象之后,不使用的时候通常需要delete掉。于是,Cocos2d-x就发明了一套内存管理机制(小若:发你妹纸。。。),其实红孩儿的博客很详细地解释了Cocos2d-x的内存管理机制,我没有能力也不想重复解释。(小若:那你还写?==)Retain的意思是保持引用,也就是说,如果想保持某个对象的引用,避免它被 阅读全文
posted @ 2013-09-16 10:46 wanqi 阅读(2715) 评论(0) 推荐(0) 编辑
摘要: //定义一个只读属性Label,在类定义中可以使用this->getLabel来访问CC_SYNTHESIZE_READONLY(cocos2d::CCLabelTTF*,_label,Label);CC_SYNTHESIZE_READONLY(varType, varName, funName)声明一个成员变量以及getfunName函数,没有set函数。getfunName已经实现,其实现就是返回这个值。this->_layer = GameOverLayer::node();this->_layer->retain(); this->addChild(_la 阅读全文
posted @ 2013-09-16 10:21 wanqi 阅读(5504) 评论(0) 推荐(0) 编辑
摘要: FROM://http://blog.csdn.net/jinciyulang/article/details/8631889阅读cocos2d-x demo的代码,我们会看到有些头文件中使用CREATE_FUNC这个宏,那么它是做什么的呢?在cocos2d-x 又是起什么作用呢?下面我们就一起来看看CREATE_FUNC宏的源代码:[cpp]view plaincopy/***defineacreatefunctionforaspecifictype,suchasCCLayer*@__TYPE__classtypetoaddcreate(),suchasCCLayer*/#defineCRE 阅读全文
posted @ 2013-09-13 15:03 wanqi 阅读(5862) 评论(0) 推荐(1) 编辑
摘要: from://http://blog.linguofeng.com/pages/language/c/Cocos2dx.htmlCocos2d-x开源、跨平台的游戏引擎一、下载http://cocos2d-x.org/projects/cocos2d-x/wiki/Download二、安装环境:Ubuntu 12.04.1 32bit$ mkdir /path/to/cocos2d-x$ mv cocos2d-2.0-rc2-x-2.0.1.zip /path/to/cocos2d-x$ cd /path/to/cocos2d-x$ unzip cocos2d-2.0-rc2-x-2.0.1. 阅读全文
posted @ 2013-09-13 10:47 wanqi 阅读(1775) 评论(0) 推荐(0) 编辑
摘要: from://http://blog.linguofeng.com/archive/2012/11/14/cocos2d-x-CCMenu.htmlCocos2d-x之CCMenuCocos2dx的菜单一、CCMenuItemSprite精灵按钮CCSprite* normal =CCSprite::spriteWithFile("默认状态的图片");CCSprite* selected =CCSprite::spriteWithFile("选中状态的图片");CCSprite* disabled =CCSprite::spriteWithFile(&q 阅读全文
posted @ 2013-09-13 10:23 wanqi 阅读(560) 评论(1) 推荐(0) 编辑
摘要: Cocos2dx的定时器from://http://blog.linguofeng.com/archive/2012/11/14/cocos2d-x-Schedule.html一、schedule定时器// 每隔0.5秒执行一次callback函数schedule(schedule_selector(Test::callback),0.5f);Test::callback(ccTime dt){}二、unschedule取消定时器unschedule(schedule_selector(Test::callback));三、CCScheduler定时器管理器CCScheduler::share 阅读全文
posted @ 2013-09-13 10:05 wanqi 阅读(723) 评论(0) 推荐(0) 编辑
摘要: getVisibleSize:表示获得视口(可视区域)的大小,如果DesignResolutionSize跟屏幕尺寸一样大,则getVisibleSize等于getWinSize。getVisibleOrigin:表示可视区域的起点坐标,这在处理相对位置的时候非常有用,确保节点在不同分辨率下的位置一致。 阅读全文
posted @ 2013-09-12 10:38 wanqi 阅读(5859) 评论(0) 推荐(0) 编辑
摘要: from://http://blog.csdn.net/xuyuanfan/article/details/9935533在C++中是没有接口的,要真正实现java中的interface功能,需要使用virtual函数的多态继承机制。这里就细讲一下C++中的virtual关键字的用法。首先设计3个类,包括book、good_book和bad_book。book为基类,而good_book和bad_book继承于book类。1、book类:包括一个成员变量name和一个虚成员函数getName2、good_book类:只有一个成员函数getName3、bad_book类:只有一个成员函数getN 阅读全文
posted @ 2013-09-11 10:13 wanqi 阅读(1435) 评论(0) 推荐(0) 编辑
摘要: from://http://ceeji.net/blog/c%E7%AC%94%E8%AE%B0%EF%BC%9A%E5%A4%B4%E6%96%87%E4%BB%B6%E7%9A%84%E4%BD%9C%E7%94%A8%E5%92%8C%E5%86%99%E6%B3%95/在 C++ 中有一个很重要的概念就是头文件。之所以在 C++ 中要使用头文件,最主要的原因是 C++ 的同一个项目可能有多个源代码文件,要命的是这些源代码是分别单独编译的。也就是说,在编译其中一个文件时,编译器并不知道其它文件中定义的内容,如类、全局变量等。这就要求我们必须在要使用某个类、函数或变量的每个文件中声明它,否 阅读全文
posted @ 2013-09-11 09:31 wanqi 阅读(65903) 评论(0) 推荐(4) 编辑
摘要: 1 Android手机目前常见的分辨率1.1 手机常见分辨率:4:3VGA 640*480 (Video Graphics Array)QVGA 320*240 (Quarter VGA)HVGA 480*320 (Half-size VGA)SVGA 800*600 (Super VGA)5:3WVGA 800*480 (Wide VGA)16:9FWVGA 854*480 (Full Wide VGA)HD 1920*1080 High DefinitionQHD 960*540720p 1280*720 标清1080p 1920*1080 高清手机:iphone 4/4s 960*640 阅读全文
posted @ 2013-09-10 15:34 wanqi 阅读(43274) 评论(0) 推荐(1) 编辑
摘要: android线程池的理解,晚上在家无事 预习了一下android异步加载的例子,也学习到了一个很重要的东东 那就是线程池+缓存下面看他们的理解。[size=1.8em]Handler+Runnable模式我们先看一个并不是异步线程加载的例子,使用 Handler+Runnable模式。这里为何不是新开线程的原因请参看这篇文章:Android Runnable 运行在那个线程 这里的代码其实是在UI 主线程中下载图片的,而不是新开线程。我们运行下面代码时,会发现他其实是阻塞了整个界面的显示,需要所有图片都加载完成后,才能显示界面。?代码片段,双击复制0102030405060708091011 阅读全文
posted @ 2013-09-06 15:02 wanqi 阅读(9880) 评论(0) 推荐(0) 编辑
摘要: from://http://www.cnblogs.com/qlwy/archive/2011/08/25/2153584.htmlC++继承:公有,私有,保护公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。1. 公有继承(public)公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问。2. 私有继承(private)私有继承的特点是基类的公有成员和保护成员都作为派生类的私有成员,并且不能被这个派生类的子类所访问。3. 保护继承(protecte 阅读全文
posted @ 2013-08-15 15:41 wanqi 阅读(669) 评论(0) 推荐(0) 编辑
摘要: 如场景切换 在内存吃紧的情况下 我们可以选择 先清理一下缓存//清空缓存CCDirector::sharedDirector()->purgeCachedData(); 阅读全文
posted @ 2013-08-15 10:33 wanqi 阅读(2802) 评论(0) 推荐(0) 编辑
摘要: 你可以通过CCEGLView::sharedOpenGLView()->getFrameSize()方法来得到屏幕的真实分辨率大小。例如以上那个函数在Iphone4S的横屏状态下返回“960*640”。 阅读全文
posted @ 2013-08-08 16:46 wanqi 阅读(263) 评论(0) 推荐(0) 编辑
摘要: from:://http://www.cnblogs.com/sunguangran/archive/2013/07/29/3222660.html将显示文本单独保存为文本文件 在cocos2d-x的示例项目中有关于配置文件读取的示例项目,有兴趣的童鞋可以自己去找下,这里将示例内容简化进行简要介绍。 首先,相关配置文件必须放在项目Resource目录下,可自己设置二级目录,方便管理, strings.plist内容如下: data hello 完美世界,完美生活 cocos2d.x.display_fps c... 阅读全文
posted @ 2013-08-08 16:32 wanqi 阅读(3437) 评论(0) 推荐(0) 编辑
摘要: git reset HEAD^ 阅读全文
posted @ 2013-08-07 10:25 wanqi 阅读(462) 评论(0) 推荐(0) 编辑
摘要: cocos2d-x 输出debug信息在Classes目录下添加文件AppDef.h#ifndef _APP_DEF_H_#define _APP_DEF_H_#include #define LOG_TAG "TestGame"#define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE,LOG_TAG,__VA_ARGS__)#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__)#define LOGI(...) __a 阅读全文
posted @ 2013-08-06 13:40 wanqi 阅读(2686) 评论(0) 推荐(0) 编辑
摘要: from://http://blog.csdn.net/htttw/article/details/7220430Ubuntu下设置环境变量有三种方法,一种用于当前终端,一种用于当前用户,一种用于所有用户:一:用于当前终端:在当前终端中输入:export PATH=$PATH:不过上面的方法只适用于当前终端,一旦当前终端关闭或在另一个终端中,则无效。export NDK_ROOT=/home/jiang/soft/android-ndk-r8e 只能在当前终端使用。二:用于当前用户:在用户主目录下有一个 .bashrc 隐藏文件,可以在此文件中加入 PATH 的设置如下:vi ~/.bashr 阅读全文
posted @ 2013-08-01 09:54 wanqi 阅读(5791) 评论(0) 推荐(0) 编辑
摘要: from://http://4225953-163-com.iteye.com/blog/704259有时候需要统计手机的型号和版本号,利用程序可以获取到相应的手机信息,见:这是我手机milstone的相关信息。获取的方法是:public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView textView = (TextView) findViewById(R.id.text); textView.setTe 阅读全文
posted @ 2013-07-31 09:23 wanqi 阅读(734) 评论(0) 推荐(0) 编辑
摘要: 读取 android sys/下的信息https://github.com/ruw/Internet-Services-projects/tree/master/OffloadPredictor/library 阅读全文
posted @ 2013-07-23 13:25 wanqi 阅读(458) 评论(0) 推荐(0) 编辑
摘要: file.getParentFile().mkdir();file.createNewFile();InputStream inputStream =context.getResources().openRawResource(R.raw.gis); 阅读全文
posted @ 2013-07-12 15:54 wanqi 阅读(1170) 评论(0) 推荐(0) 编辑
摘要: c++ 里面struct可以new,另外:C++中,struct关键字与Class关键字基本是一样的,但是,有两点不同 1 struct定义的数据类型里面所有成员默认级别都是共有的,而class里面所有成员默认级别都是私有的 2 在模板定义中,只能用class 或者typename 而不能用struct提问者评价讲的很好,很清楚,感谢高人http://blog.sina.com.cn/s/blog_3fabd4ba0100od67.html结构体可以看做是一种自定义的数据类型,它还有一个很重要的特性,就是结构体可以相互嵌套使用,但也是有条件的,结构体可以包含结构体指针,但绝对不能在结构... 阅读全文
posted @ 2013-07-12 13:52 wanqi 阅读(16589) 评论(0) 推荐(0) 编辑
摘要: [Android分享]异步图片下载引擎(升级版——ExecutorService+handler)[复制链接]皮诺13主题5好友844积分No.4 中级开发者升级24%精华0帖子198e币997 元发消息电梯直达楼主发表于 2013-4-7 14:39:10|只看该作者|正序浏览0以前发过一篇有关加载图片的文章,是处理应用中常常遇到的加载列表缩略图与大图的文章,当时是因为赶项目,时间仓促,并没有过多的考虑,闲暇时间,反思了一下,觉得以前所用的方法过于笨拙且消耗手机资源加大,思量再三,又重新做了一个此次引用了线程池ExecutorService与改用了Handler的post方法采用线程池的目的 阅读全文
posted @ 2013-07-10 09:58 wanqi 阅读(835) 评论(0) 推荐(0) 编辑
摘要: [Android分享][开源]Google code Android开源项目(一)[复制链接]4491227172主题2好友816积分No.4 中级开发者升级19.33%精华0帖子240e币222 元发消息电梯直达楼主发表于昨天11:41|只看该作者|倒序浏览0开源项目不胜枚举,基于不要重复造轮子的原则,了解当下比较流行的Android与iOS开源项目很是必要。利用这些项目,有时能够让你达到事半功倍的效果。1. ZXinghttp://code.google.com/p/zxing/条形码、二维码2. K-9 Mailhttp://code.google.com/p/k9mail/邮件客户.. 阅读全文
posted @ 2013-07-10 09:56 wanqi 阅读(1429) 评论(0) 推荐(0) 编辑
摘要: 本帖最后由 yanghe123 于 2012-6-7 09:58 编辑Android应用开发中,会经常要提交数据到服务器和从服务器得到数据,本文主要是给出了利用http协议采用HttpClient方式向服务器提交数据的方法。代码比较简单,这里不去过多的阐述,直接看代码。/*** @author Dylan 本类封装了Android中向web服务器提交数据的两种方式四种方法*/public class SubmitDataByHttpClientAndOrdinaryWay {*** 使用get请求以普通方式提交数据** @param map* 传递进来的数据,以map的形式进行了封装* ... 阅读全文
posted @ 2013-07-10 09:33 wanqi 阅读(10554) 评论(0) 推荐(0) 编辑
摘要: 打电话时InCallScreen的具体流程前面说到OutgoingCallReceiver解析号码并启动incallscreen类,第一次启动时首先进入了其oncreate方法(1)初始化PhoneApp类(2)增加FLAG参数:FLAG_DISMISS_KEYGUARD(这个参数的作用主要在于解除锁屏,比如锁屏时来电,这时候就需要先解除锁屏再显示画面,这样用户就能在锁屏时接收到来电了~)(3)setPhone(4)调用初始化各种组件(callcard,menuview等)初始化组件等一系列操作后,进入onresume方法:(1)调用PhoneApp的disablestatusbar,用来更新 阅读全文
posted @ 2013-06-21 15:20 wanqi 阅读(2121) 评论(0) 推荐(0) 编辑
摘要: SystemProperties與Settings.System1 使用 SystemProperties.get如果属性名称以“ro.”开头,那么这个属性被视为只读属性。一旦设置,属性值不能改变。如果属性名称以“persist.”开头,当设置这个属性时,其值也将写入/data/property。在c++中就是对应JAVA的两个函数就是property_set, property_get,其实JAVA是通过JNI调用这两个函数的。JAVA代码如下:import android.os.SystemProperties;SystemProperties.set("persist.sys. 阅读全文
posted @ 2013-06-09 10:07 wanqi 阅读(42190) 评论(1) 推荐(0) 编辑
摘要: 随机问题的log获取的方法,连接USB到电脑上,执行如下步骤: 1)启动系统,连接USB,执行adb shell<回车> 2)进入shell后可执行 logcat -v time > /sdcard/log.log & Log文件在手机的存储卡里log.log,拔掉USB线,仍然可以记录log 阅读全文
posted @ 2013-05-27 17:44 wanqi 阅读(4366) 评论(0) 推荐(0) 编辑
摘要: 如何调用Android隐藏API作为Android应用的开发者,在Android平台上开发,最熟悉的莫过于android sdk。SDK给开发者带来的巨大的便利,使得Android平台的应用开发效率大大提高。不过遗憾的是,Android的功能远不止SDK暴露的那么多,还有很多隐藏的东西Google都没有通过SDK暴露给用户开发者。查看Android源代码时就会发现,这些隐藏的API都有一个共同的特点:类或者方法前都有@hide。如图: <ignore_js_op>一、如何隐藏API的?1)在正常情况下,即不加@hide的时候,所有的public的类或者方法,在编译时都会编译生... 阅读全文
posted @ 2013-05-24 10:23 wanqi 阅读(14818) 评论(2) 推荐(0) 编辑
摘要: android4.0.3 phone 和 tablet 模式设置 修改点android4.0.3 phone 和 tablet 模式设置,是否只有增加PRODUCT_CHARACTERISTICS := tablet属性即可, 还需要做其他修改吗? 阅读全文
posted @ 2013-05-21 17:17 wanqi 阅读(1276) 评论(0) 推荐(0) 编辑
摘要: git revert -n indexgit revert 和 git reset的区别1. git revert是用一次新的commit来回滚之前的commit,git reset是直接删除指定的commit。2. 在回滚这一操作上看,效果差不多。但是在日后继续merge以前的老版本时有区别。因为git revert是用一次逆向的commit“中和”之前的提交,因此日后合并老的branch时,导致这部分改变不会再次出现,但是git reset是之间把某些commit在某个branch上删除,因而和老的branch再次merge时,这些被回滚的commit应该还会被引入。3. git rese 阅读全文
posted @ 2013-05-14 13:53 wanqi 阅读(15303) 评论(0) 推荐(0) 编辑
摘要: from://http://blog.csdn.net/pkigavin/article/details/8747209以根据/build/tools/buildinfo.sh下面:echo "ro.build.characteristics=$TARGET_AAPT_CHARACTERISTICS"去查找build文件夹一个mk文件(忘记名字了) 中 TARGET_AAPT_CHARACTERISTICS=default 的地方。修改成tablet。可以试一下build\core\product_config.mk文件中的TARGET_AAPT_CHARACTERISTI 阅读全文
posted @ 2013-05-14 11:20 wanqi 阅读(2790) 评论(0) 推荐(0) 编辑
摘要: 在device,vendor,package下新建一个目录把.apk,.so文件放到这个目录中。然后编写Android.mk文件LOCAL_PATH:= $(call my-dir)APK_LOCAL_PATH := $(LOCAL_PATH)APK_INSTALL_PATH := system/appLIB_LOCAL_PATH := $(LOCAL_PATH)/libsLIB_INSTALL_PATH := system/lib#COPY APK include $(CLEAR_VARS) LOCAL_MODULE := FaceLock LOCAL_MODULE_PATH := $... 阅读全文
posted @ 2013-05-13 10:39 wanqi 阅读(1718) 评论(0) 推荐(0) 编辑
摘要: 分析,读取androidbuild.prop若要在java代码里读取里面的属性值,则需用到android.os.SystemProperties这个类,此类未开放(未提供给SDK API),此类具体位置:frameworks\base\core\java\android\os\SystemProperties.java能够在frameworks里面使用,比如在所有文件policies\base\phone\com\android\internal\policy\impl\LockScreen.java里使用 final boolean isMonkey = SystemProperties.g 阅读全文
posted @ 2013-05-13 10:09 wanqi 阅读(6833) 评论(0) 推荐(0) 编辑
摘要: adb pull data/logcat2.txt ./temp/1111 阅读全文
posted @ 2013-03-13 13:12 wanqi 阅读(210) 评论(0) 推荐(0) 编辑
摘要: git checkout -b test1 index git branch -d test1 阅读全文
posted @ 2013-03-07 14:19 wanqi 阅读(220) 评论(0) 推荐(0) 编辑
摘要: mmm -j4 snod framework/basemp systemimage 使用模块编译,只需要在你所在的模块的目录或者其子目录,执行mm,便可以编译出一个单独的apk,这样岂不快哉! 具体步骤: 1)打开~/.baserc文件,加入source ~/I850/build/envsetup.sh. 加入你自己该文件所在的路径,这样就免去了每次启动新的终端执行mm命令之前,需要引用此文件. 2)完成步骤1之后,就可以在你的模块里面随意执行mm了,要想使用其他快速命令,可以查看envsetup.sh文件,比如 cgrep,jgrep,resgrep在不同类型的文件里面进行相应的查询.... 阅读全文
posted @ 2013-01-31 15:44 wanqi 阅读(3636) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 13 下一页