首页 文章 精选 留言 我的

精选列表

搜索[网站开发],共10000篇文章
优秀的个人博客,低调大师

【iOS-cocos2d-X 游戏开发之十一】使用New CCSprite() &CCUserDefault要注意!

本章讲解的是几个细节问题,但是此细节有可能导致一系列问题,那么今天Himi与童鞋们共同交流分享下; 一. 对于CCSprite 与 CCNode 是都很常用的类,那么基础使用方法这里不赘述,但是CCSprite 与 CCNode在进行添加子类时可能有些童鞋遇到过问题,下面我们详细看下: CCSprite*sp=CCSprite::spriteWithFile("Icon.png"); sp->setPosition(ccp(200,200)); sp->addChild(CCSprite::spriteWithFile("Icon.png")); this->addChild(sp); //this是个Layer 索引图片名直接创建个精灵A,然后A add 子类精灵,最后将A添加Layer中,没说的,eazy,不解释; 首先给出代码段1: 那么再看下面代码段2: CCSprite*sp=newCCSprite(); sp->setPosition(ccp(200,200)); sp->addChild(CCSprite::spriteWithFile("Icon.png")); this->addChild(sp); //this是个Layer 顺序和功能跟代码段1一样,但当你运行后发现程序异常!原因是sp 中并没有真正的初始化,而仅仅简单的申请了一块内存而已; 解决方案:仍然调用CCSprite公开的几个构造函数即可; CCSprite*sp=newCCSprite(); //CCSprite构造下 sp->initWithFile("Icon.png"); sp->setPosition(ccp(200,200)); sp->addChild(CCSprite::spriteWithFile("Icon.png")); this->addChild(sp); 此问题比较容易理解,但是当我们出现以上问题时,肯定是想不想创建一个精灵时传入资源,所以会使用new方式来使用,那么如果你想创建一个没有贴图的精灵可以按照如下方式实现: CCSprite*sp=(CCSprite*)CCNode::node(); sp->setPosition(ccp(200,200)); sp->addChild(CCSprite::spriteWithFile("Icon.png")); this->addChild(sp); 利用Node::node初始化数据后强转给CCSprite子类即可;话说回来既然如此到不如使用CCNode来的方便?!没错,如果你想封装一个精灵,并往里添加子精灵,那么创建这个精灵如不想使用资源创建,那么推荐使用CCNode,(自定义类型继承CCNode),另一方面如果创建这个精灵可以索引到资源,可以继承CCSprite,没问题; 值得注意的是: 当你自定义A类继承精灵类CCSprite,使用new形式创建A类一个精灵后并addChild子精灵,一般不会造成程序异常,而且正常运行在iOS上,但是当你编译后运行Android上之后会发现精灵都是白色块的情况,如下前后对比图: iOS运行截图: 编译Android运行截图: 二. 在cocos2dx中使用CCUserDefault的时候要注意,官方微薄也已提示,在当你setStringxxx、setBoolxxx等数据后要调用CCUserDefault的flush()函数,只有当你flush()了,才会将数据以xml格式保存本地App->Documents目录中! 三.在cocos2dx中使用pvr.ccz格式的图片时候跟cocos2d的使用有一点区别,在cocos2d中加载pvr.ccz的图片资源不用去管大小和尺寸(当然为了兼容老代机器,推荐1024*1024),但是在Cocos2dx中当你的pvr.ccz的资源大小宽高不是正方形的话(2 的N次幂),会在控制台提示警告,并且!虽然程序能正常运行,但是在编译后Android上无法正常显示,是显示图片为白色块!所以这点也要注意; 本文转自 xiaominghimi 51CTO博客,原文链接:http://blog.51cto.com/xiaominghimi/863417,如需转载请自行联系原作者

优秀的个人博客,低调大师

Android UI开发第二十九篇——Android中五种常用的menu(菜单)

Android Menu在手机的应用中起着导航的作用,作者总结了5种常用的Menu。 1、左右推出的Menu 前段时间比较流行,我最早是在海豚浏览器中看到的,当时耳目一新。最早使用左右推出菜单的,听说是Facebook,我不确定消息的真实性。左右推出菜单如图, 2、Path菜单 为什叫Path菜单呢,因为我是最早在path应用中看到的,这里也不知道起什么名字了,就定为Path菜单了。这种散开、收起的小图标很清新,Path菜单出现后,国内就出现了很多仿品。其实实现不难,主要是创意。 3、GridView菜单 GridView菜单,顾名思义,这种Menu是使用gridview实现的,当然使用简单布局也能实现,这种最早出现在Menu的类别比较多的的浏览器中。如下图: 4、popuwindow菜单 这种菜单使用popuwindow加简单的布局实现,出现的比较早,开始时期主要是为了替换丑陋的系统菜单。 5、系统菜单 系统菜单,尤其在3.0以下的系统中长的比较丑陋,有时和我们的应用不匹配,很少使用。 本文转自xyz_lmn51CTO博客,原文链接:http://blog.51cto.com/xyzlmn/1230749 ,如需转载请自行联系原作者

优秀的个人博客,低调大师

[C#][MySql]统计数据表总行数函数--C#和MySQL开发

Web.config设置 <?xml version="1.0"?> <configuration> <connectionStrings> <add name="MyConnectionString" connectionString="server=localhost;user id=root;password=123456;database=demo; pooling=true;"/> </connectionStrings> </configuration> -------------------------------------------------------------------------------------------- // 使用MySql数据库 using MySql.Data.MySqlClient; -------------------------------------------------------------------------------------------- #region 统计数据表总行数函数 /// <summary> /// 统计数据表总行数 /// </summary> /// <param name="intCount">数据表统计数</param> /// <returns>执行结果</returns> public int GetDataCount() { int intCount = 0; // 数据库SQL语句 String strSQL = @"SELECT Count(*) As MyCount FROM User"; // 数据库连接参数(对客户端应用程序配置文件的访问) string strConn = @System.Configuration.ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString; // 数据库的一个连接 MySql.Data.MySqlClient.MySqlConnection MyConn = new MySql.Data.MySqlClient.MySqlConnection(strConn); // 连接到数据源时执行的 SQL 语句 MySql.Data.MySqlClient.MySqlCommand MyComm = new MySql.Data.MySqlClient.MySqlCommand(strSQL, MyConn); try { // 使用所指定的属性设置打开数据库连接 MyConn.Open(); // 提供一种从数据库读取只进的一种方式 MySql.Data.MySqlClient.MySqlDataReader MyDataReader = MyComm.ExecuteReader(); // 读取数据,判断是否有数据 if (MyDataReader.HasRows) { // 读数据 MyDataReader.Read(); // 统计数据表总行数 intCount = MyDataReader.GetInt32(MyDataReader.GetOrdinal("MyCount")); // 返回成功 return intCount; } else { // 返回失败 return 0; } } catch (MySql.Data.MySqlClient.MySqlException Exp) // 数据库操作异常处理 { // 异常信息 System.Diagnostics.Debug.Write(Exp.Message.ToString()); // 判断是否连接 if (MyConn.State == System.Data.ConnectionState.Open) { // 关闭数据库连接 MyConn.Close(); } // 释放内存资源 MyConn.Dispose(); MyComm.Dispose(); // 返回失败 return 0; } catch (System.Exception Exp) // 异常处理 { // 异常信息 System.Diagnostics.Debug.Write(Exp.Message.ToString()); // 判断是否连接 if (MyConn.State == System.Data.ConnectionState.Open) { // 关闭数据库连接 MyConn.Close(); } // 释放内存资源 MyConn.Dispose(); MyComm.Dispose(); // 返回失败 return 0; } finally // 执行完毕清除在try块中分配的任何资源 { // 判断是否连接 if (MyConn.State == System.Data.ConnectionState.Open) { // 关闭数据库连接 MyConn.Close(); } // 释放内存资源 MyConn.Dispose(); MyComm.Dispose(); } } #endregion -------------------------------------------------------------------------------------------- 我有几张 阿里云幸运券分享给你,用券购买或者升级阿里云相应产品会有特惠惊喜哦!把想要买的产品的幸运券都领走吧!快下手,马上就要抢光了。 https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=6evata1e&utm_source=6evata1e

优秀的个人博客,低调大师

《Android应用开发攻略》——1.8 通过SlideME将应用程序安装到模拟器上

1.8 通过SlideME将应用程序安装到模拟器上 David Dawes1.8.1 问题App Store(应用程序商店)是现代智能手机吸引人的一个重要因素。Google的Android Market(安卓市场)是官方的应用程序商店,但是你可能希望利用其他的商店。1.8.2 解决方案SlideMe LLC提供一个备选的应用商店。SlideME应用商店允许安装其他应用程序(你可能希望与其他应用程序集成),也可以在模拟Android设备上测试发布和下载自己的应用程序的体验。SlideME还能联系到许多被Google Android Market关在门外的Android用户,包括拥有无法支持的设备,以及生活在Android Market所不支持的国家中的人们。1.8.3 讨论Slide ME是官方的Android Market的一个替代

优秀的个人博客,低调大师

《深入理解Nginx:模块开发与架构解析》一3.4 HTTP模块的数据结构

3.4 HTTP模块的数据结构 定义HTTP模块方式很简单,例如: ngx_module_t ngx_http_mytest_module; 其中,ngx_module_t 是一个Nginx模块的数据结构(详见8.2节)。下面来分析一下Nginx模块中所有的成员,如下所示: typedef struct ngx_module_s ngx_module_t; struct ngx_module_s { /* 下面的ctx_index、index、spare0、spare1、spare2、spare3、version变量不需要在定义时赋值,可以用Nginx准备好的宏NGX_MODULE_V1来定义,它已经定义好了这7个值。 #define NGX_MODULE_V1 0, 0, 0, 0, 0, 0, 1 对于一类模

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册