- 博客(66)
- 资源 (3)
- 收藏
- 关注
原创 LitJson删除单条数据
LitJson 删除单条数据操说明:LitJson第三方库不提供删除单条数据的操作,只能手动实现步骤:A:定义一个字符串tempStr保存jsonData转化成的字符串B:清除原来JsonData数据C:tempStr转化为JsonData,在对原来的JsonData进行赋值,过滤掉删除的数据说多无益,直接上代码: //定义一个字符串tempStr保存jsonD
2017-06-06 17:50:55
2944
1
原创 自由视角摄像机,实现旋转,缩放
借鉴前人代码,自己加了一些注释,帮助大家理解操作方式:1.新建一个脚本:CameraControl.cs2.把脚本绑定到摄像机上代码如下:(注释很详细)using UnityEngine;using System.Collections;public class CameraControl : MonoBehaviour{ //观察目标 public Transfo
2017-05-24 11:17:53
2678
2
原创 python脚本处理代码注释规范化
python脚本 实现注释的规范化处理:示例:1.源代码:int speed = 4;//设置速度为4处理后://设置速度为4int speed = 4;2.源代码:else{//否则处理后://否则else{3.源代码:}else{//否则处理后://否则}else{4.源代码:if(cond
2017-05-02 12:30:53
2039
原创 JS简单实现括号匹配问题
1.首先要有一个运行js的编译环境,综合简单暴力的原则,我们用sublime配置一个node.js的环境,这个百度很多,无论是win,mac,还是linux,请自行百度。2.示例代码var moduleJson = {//括号匹配模板,你可以增加别的匹配,比如“{}”,“<>”,等,只需写入moduleJson里面去 "(":")", "[":"]"}var tes
2016-07-17 13:09:55
6079
转载 Cocos2d-x3.2与OpenGL渲染总结和渲染流程
第一,渲染流程从2.x到3.x的变化。在2.x中,渲染过程是通过递归渲染树(Rendering tree)这种图关系来渲染关系图。递归调用visit()函数,并且在visit()函数中调用该节点的draw函数渲染各个节点,此时draw函数的作用是直接调用OpenGL代码进行图形的渲染。由于visit()和draw函数都是虚函数,所以要注意执行时的多态。那么我们来看看2.x版本中CCSprite的dr
2015-11-19 11:58:21
1569
转载 Lua中__index 和__newindex 讲解
前言这篇博文将通过几个简单的实例演示,巩固对__index和__newindex的理解,同时加深对Lua中元表和元方法的理解,如果对Lua的元表和元方法还不是很熟悉的话,请参考这篇文章:《Lua中的元表与元方法》。具有默认值的table我们都知道,table中的任何字段的默认值都是nil,但是通过元表,我们可以很容易的修改这一规定,代码如下:function setDe
2015-11-16 14:53:27
1689
原创 win 搭建quick_cocos2d-x-3.3环境
1.1.安装lua出现以下界面说明运行成功2.安装sublime3到官方下载,网址:http://www.sublimetext.com/33.为sublime安装插件Package Control从菜单 View - Show Console 或者 ctrl + ~ 快捷键,调出 console。将以下 Python 代码粘贴进去并 enter 执行,不出意外
2015-11-16 00:32:10
5607
原创 Box2D 物理引擎---创建一个简单的模拟物理世界
效果展示:首先:我们进行名词解释:b2BodyDef 确定位置 包括旋转角度 以及userData b2BodyDef bodyDef; bodyDef.type =b2_dynamicBody; //设置动态类型 bodyDef.position =b2Vec2(3,6);//设置位置,单位为米 b2Body *body
2015-10-31 15:39:47
1700
原创 Cocos2dx 3.0资源加载进度条Loading...
效果展示:步骤如下:1、创建label和progressTimer;2、加载资源3、每加载一张都调用回调函数;首先看下头文件:HelloWorld.h#ifndef __HELLOWORLD_SCENE_H__#define __HELLOWORLD_SCENE_H__#include "cocos2d.h"using namespace c
2015-09-25 13:30:29
1812
原创 iOS之 实现单例的步骤和具体实例:
单例模式的意思就是只有一个实例。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。1.单例模式的要点: 显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。2.单例模式的优点: 1.实例控制:Singleton 会阻止其他对象实例化其自己的 Singleton 对象的副本,从而确保所有对象
2015-09-16 09:46:15
750
1
原创 IOS子UITabBarController效果
index:效果展示: 1.新建一个 UITabBarController作为根视图的子视图2.新建4个表视图,作为UITabBarController的子视图如图3.UITabBarController的代码如下:- (void)viewDidLoad{ [super v
2015-09-08 21:47:36
804
1
原创 loadView 和 viewDidLoad区别分析
loadView 和 viewDidLoad 是 iPhone 开发中肯定要用到的两个方法。 他们都可以用来在视图载入的时候初始化一些内容。 但是他们有什么区别呢? viewDidLoad 方法只有当 view 从 nib 文件初始化的 loadView 和 viewDidLoad 是 iPhone 开发中肯定要用到的两个方法。 他们都可以用来在视图载入的时候初始化一些内容。 但是他们有什
2015-09-06 22:55:24
863
1
原创 IOS之 TableVIewContrller
项目实现:1.在一个表格中可以对行元素进行删除,插入,和移动操作,2.点击一个行元素,可以进入第二页面对内容进行修改。效果展示: 实现步骤:1.新建一个Movie类,这个类相当于MVC中的M,里面是视图中要用到的成员变量:其中头文件定义如下,然
2015-08-31 22:38:02
709
原创 strong和weak
在iOS开发的过程中,我们一般不用retain,和assign,而是用strong和weak,这时候,我们可以把strong理解为retain,而weak理解为assign,比较容易理解。在ARC情况下:Strong 和weak:如果一个对象同时被两个指针所引用,例如:Object *b1 = [[Object alloc]initAge:23];O
2015-08-29 17:14:28
1886
原创 IOS开发点击空白处隐藏虚拟键盘的几种方法:
OS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能取消键盘的显示,对于用户体验来说很不友好,我们可以实现点击键盘以外的空白区域来将键盘隐藏,以下我总结出了几种隐藏键盘的方法:首先说明两种可以让键盘隐藏的Method:1、[view endEditing:YES] 这个方法可以让整个view取消第一响应者,从而让所有控件的键
2015-08-27 21:45:57
2747
1
原创 页面跳转 和虚拟键盘的自动隐藏
前提:起码要有两个视图控制器。注意事项:设置跳转的动画效果UITextField输入时,虚拟键盘的位置设置(整体布局向上移动,虚拟键盘的自动隐藏)实现的功能:A:在第一个页面跳转到第二个页面,然后第二个页面点击按钮,进行返回B:在第一个页面有一个text控件,点击一个按钮,传递到第二个页面,然后显示到第二个页面的label上面:效果展示:
2015-08-27 21:26:49
4722
5
原创 UIView的各种方法介绍和生命周期
当一个视图控制器被创建,并在屏幕上显示的时候。 代码的执行顺序1、 alloc 创建对象,分配空间2、init (initWithNibName) 初始化对象,初始化数据3、loadView 从nib载入视图 ,通常这一步不需要去干涉。除非你没有使用xib文件创建视图
2015-08-27 20:13:29
1250
2
原创 IOS之秒表计时器
1.利用xib方式新建一个秒表计数器。功能实现:该应用有三个按钮:开始,记次,复位开始:开始控制着秒表的开始,点击后,按钮文字变成停止,在没有开始的情况下不允许记次操作记次:可以记录多个你点击的时间,复位:复位可以让秒表归零实现效果图如下:
2015-08-27 09:02:36
13070
4
原创 iOS之弹幕效果
弹幕效果展示:步骤: 1. 在AppDelegate类里面创建一个视图控制器,并把创建的视图控制器放入父视图中。 其中关于用[self.window addSubview:viewController.view] 和self.window.rootViewController = viewController;请看我的上一篇文章:http://blog.
2015-08-25 20:17:27
7096
7
原创 addSubview和rootViewController区别
如果你把一个view添加到主视图中去有两种方式:(1)直接将控制器的view添加到UIWindow中,并不理会它对应的控制器[self.window addsubview:MyView.view];(2)设置uiwindow的根控制器,自动将rootviewcontroller的view添加到window中,负责管理rootviewcontroller的生
2015-08-25 17:10:22
2458
4
原创 OC中NSMutableArray 和NSMutableDictionary 中打印乱码问题
1,新建一个乱码文件的category分类文件2.然后堆descriptionWithLocale函数进行重写。例如:[objc] view plaincopy @interface NSArray (chinese) //local是你定义的数组同下- (NSString *)descriptionWi
2015-08-21 21:26:06
1783
1
转载 归档和解挡
一、已有类型的归档和解档首先来看一个简单的例子:[objc] view plaincopy// // main.m // 33_ObjectToFile // // Created by jiangwei on 14-10-13. // Copyright (c) 2014年 jiangwei.
2015-08-21 19:18:17
906
原创 block的简单实现和讲解:
1.block封装了一段代码,可以在任何时候执行。2.block可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值,它和传统的函数指针很类似,但是有区别,block是inline(内联函数)的,并且默认情况下它对局部变量是只读的3.block很好用并且性能很高,苹果官方建议尽量多的使用block,在多线程,异步任务,集合遍历,集合排序,动画转场用的很多。
2015-08-19 21:38:12
1094
原创 OC数组的四大遍历方式和分析。
1第一种方式:利用for循环:#pragma mark 遍历数组1//----------简单遍历。利用for循环void arrayFor1(){ NSArray *array = [NSArray arrayWithObjects: @"1", @"2", @"3", nil]; NSUInteger count = array.count; fo
2015-08-19 20:33:53
2277
原创 category和protocol 第五天稍晚了一些。
1.category:(类别):(给一个类扩充方法) OC提供了一种与众不同的方式-category,可以动态的为已经存在 的类添加新的行为(方法) 这样可以保证类的原始设计规模较小,功能增加时,再逐一扩展 category使用简单的方式,实现了类的相关方法的模块化,把不同的类方法分配到不同的分类文件中。 新建一个文件,选择category,然后
2015-08-18 19:06:59
726
原创 第四天:内存管理-property参数
1.通常引用一个类有两种方法:1,通过#import方法引入2.通过@class引入 #import 和@class的区别: #import "B.h"@interface A:NSObject { B *b;}@end 1.#import方式会包含被引用类的所有信息,包括被引用类的变量和方法。@class方式只是告诉编译器
2015-08-14 21:41:19
782
原创 OC第三天(内存管理)
内存管理:1.作用范围:任何继承了NSObject的对象,堆基本数据类型无效如:int a ,float price;;等2.原理:每个对象内部都保存了一个与之相关的整数,称为引用计数器,当使用alloc new copy创建一个对象的时候,对象的引用计数器被设置为1 每给对象发送一次retain消息,可以使引用计数器+1;给对象发送一条rele
2015-08-13 21:43:46
725
原创 如期而至,OC第二天
OC中的构造方法(在对象初始化的时候,这时候可以直接调用构造函数)1.一般以init开头,(动态方法)2.返回值最好是返回ID,步骤:1.调用super的构造方法: 2.判断self是否为空如果不为空,那么就进行赋值操作 3.返回self。-(id)initWithAge:(int)ageandNo:(int)no{ self=[super
2015-08-12 20:31:33
611
原创 从今天开始学OC,一天一更,让我们共同进步。
第一天OC的文件后缀名为.m(message)的意思,第一个程序helloworld:打印函数NSLog();和C语言和c++的区别是,它会自动换行。 #import:包含系统的头文件。和C语言的#include类似,但是,他会自动判断是否已经被包含,而C语言中需要用#ifndef #endif来进行管理: 定义一个类:包含两个文件
2015-08-11 20:28:00
742
原创 Sublime 在win上搭建C++环境
sublime 是一款强大的跨平台代码编辑器,小巧而且丰富实用的功能是Visual Studio不能比拟的,但是编译运行是一个软肋,本文通过在sublime中配置g++编译器实现程序的编译功能。具体做法一共有四个步骤:下载安装Sublime text2 for windows下载安装 MinGW 与 系统变量设置Sublime Building System 设置编译测
2015-08-07 11:13:05
1038
原创 c++类的构造函数详解
一、构造函数是干什么的class Dog{public: // 类Dog的构造函数 // 特点:以类名作为函数名,无返回类型 Dog() { weight = 0; } private: //
2015-03-19 23:42:48
1129
原创 别踩白块JS代码实现
1.思路: 1.创建DIV容器;例如:400*400 2.创建4行DIV 3.4行DIV中,再放4列DIV,float left 4.写一个方法,创建4列子DIV,创建一行DIV,把一行四列,插入到容器中 5.定时器,没30毫秒增加TOP值 6.没往下滑100px时,再创建一行四列,插入在窗口的最前面。别踩白块 #main { width: 400px; height
2015-03-02 17:05:25
5022
原创 数独游戏-安卓版源代码和分析。
1.在创建的项目中,主要有以下类,其中,Game.java 是数独游戏的算法:keydialog:主要控制数据九宫格的显示和操作MainActivity:主要加载主页面,代码只需改动一个setcontentview。shuduView:主要是调用各个功能函数,和实现具体操作。(1)shuduView.Java源代码如下:package com.lien.lien
2015-02-10 20:07:50
6695
1
原创 串操作算法虚拟实现
//串:它是有限字符集中的零个或多个字符组成的有限序列//一种特殊的线性表int indexz(String S,String T,int pos){ //T为非空串,若主串S中第pos个字符之后存在与T相等 //的子串,则返回第一个这样的子串在S中的位置 if(pos>0) { n=StrLength(S);//求出主字符串的长度 m=StrLength(T);//求出非
2015-02-02 12:28:16
1096
原创 循环列队的循序结构
//1.队列顺序结构的定义#define MAXQSIZE 100typedef struct { QElemType base[MAXQSIZE];//静态数组 int front;//队列头指针 int rear;//队列尾指针}SqQueue;//解决队列的假溢出方法//1.将循序列队臆造为一个环状空间。尾指针指向头指针//2.在对满的情况下,rear指针和front
2015-01-31 17:05:53
1234
原创 栈的链式存储结构
//1.初始化:(有头结点的情况下)S=(LStack*)malloc(sizeof(LStack));//为栈开辟内存空间S.next=NULL;//把栈置为空//2.入栈p=(LStack*)malloc(sizeof(Lstack));//给入栈的元素分配内存空间p->data=e;//把元素e插入栈内p->next=S->next;//使得e成为了栈顶元素S->next=p;
2015-01-30 19:05:15
1111
原创 栈的顺序存储结构
#define STACK_INIT_SIZE 100;//定义栈的初始化存储空间#define STACKINCREMENT 10;//定义栈的追加存储空间的大小typedef struct { SElemType *base;//栈尾元素,在栈构造之前和销毁以后,base=NULL SElemType *top;//栈顶指针 int stacksize;//栈的长度};SqSta
2015-01-30 12:04:22
1209
原创 单链表的建立和增删改查代码及讲解
//---单链表的单链式存储结构----typedef struct LNode{ ElemType data; struct LNode *next;}LNode,*LinkList;//1.初始化int Initlist(LinkList L){ L=NULL; return OK;}//初始化(带头结点)int Initlist(LinkList L){ L
2015-01-29 11:55:40
2647
UIObject3D Render 3D Models on any Unity UI Canvas 1.14.unitypackage
2020-06-03
Shader Forge 1.38 最新
2018-04-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人