CCScale9Sprite 设置图片大小方式:

updateButtonSpriteMark->setContentSize(size);//设置图片的原始大小设置节点的未转换大小。无论节点被缩放或旋转,contentSize保持不变。 所有节点都有一个大小。 图层和场景的屏幕尺寸相同。//所以不能用这种方式设置图片大小,无效

updateButtonSpriteMark->setPreferredSize(size);  ----> 设置图片大小 ok

setContentSize  主要应用在 Label, and ScrollView. 这两个控件,设定内容的显示区上.


关于精灵的各种操作,总结一下以便以后复习查找。

内容简要:

1、初始化 2、创建无图的精灵 3、设置精灵贴图大小 4、添加入层中

5、对精灵进行缩放 6、对精灵款或高进行缩放 7、旋转精灵

8、设置精灵透明度 9、精灵的镜像反转 10、设置精灵的颜色

11、得到图的宽高 12、按照像素设定图片大小 13、在原有的基础上加xy的坐标

14、设置图片锚点 15、从新排列z轴顺序 16、更换精灵贴图

17、设置可视区域 18、贴图无锯齿

-----------------------------------------------------------------------------------------------------------------------------------------------------

//初始化

CCSprite* sprite =[CCSprite spriteWithFile:@"Icon.png"];

//创建无图的精灵

CCSprite*sprite2 =[CCSprite node];

//设置精灵贴图大小
    sprite2.textureRect=CGRectMake(0, 0, 20, 20);//设置其为宽20,高20.

//添加入层中

[self addChild:sprite z:2]; //将精灵加入层中设置其z轴为2

//对精灵进行缩放

sprite.scale=2;//放大2倍

//对精灵款或高进行缩放

sprite.scaleX = 2;//宽放大2倍

sprite.scaleY = 2;//高放大2倍

//旋转精灵

sprite.rotation=90;//旋转90度

//设置精灵透明度

sprite.opacity=255;//设置透明度为完全不透明(范围0~255)

//定义精灵位置

sprite.position=ccp(100,100);//设置精灵中心点坐标是x=100,y=100

//精灵的镜像反转

[sprite setFlipX:YES];//X轴镜像反转

[sprite setFlipY:YES];//Y轴镜像反转

//设置精灵的颜色

[sprite setColor:ccc3(255, 0, 0)];//设置颜色为红色

//得到图的宽高

float contentSize = sprite .contentSize.width //得到图片的宽高

//按照像素设定图片大小

sprite.scaleX=(20)/contentSize; //按照像素定制图片宽高   重点:这种方式比较常用!!!

//在原有的基础上加xy的坐标

sprite.position = ccpAdd(sprite.position,ccp(20,20));//在原有坐标的基础上加减坐标

//设置图片锚点

[sprite setAnchorPoint:ccp(0.5,0.5) ];//设置图片的锚点

//从新排列z轴顺序

[self reorderChild:sprite z:1];//从新排列z轴顺序

//更换精灵贴图
    CCTexture2D * test=[[CCTextureCache sharedTextureCache] addImage: @"test.png"];//新建贴图

[sprite setTexture:test];

//更换精灵贴图,加载帧缓存,这个test.plist保存了frame这张图

[[CCSpriteFrameCache sharedSpriteFrameCache] addSpriteFramesWithFile:@"test.plist"];

CCSpriteFrame* frame = [[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:@"fram.png"];
    [sprite2 setDisplayFrame:frame];

//设置可视区域
    CCSprite * sprite3 =[CCSprite spriteWithFile:@"icon.png" rect:CGRectMake(0, 0, 20,20)];//创建时设置

[sprite3 setTextureRect:CGRectMake(10, 10, 30, 30)];//创建后设置

//贴图无锯齿

[sprite3 .texture setAliasTexParameters];

CCScale9Sprite 的 setContentSize setPreferredSize 区别的更多相关文章

  1. setPreferredSize和setSize的区别及用法

    我以前很喜欢borderlayout的布局方式,每次想特别调整每个区域的大小,但是每次将一个panel放入到north或者其他4个区域时,总是达不到想要的效果,刚刚才发现原来setPreferredS ...

  2. Java GUI setSize()、setPreferredSize()的区别

    setSize().setPreferredSize()都可以设置组件的大小,但二者的使用有所不同. 1.setSize()的使用方式 setSize(int width,int height) se ...

  3. cocos2dx基础篇(11) 点九图CCScale9Sprite

    [3.x] (1)去掉"CC" [v3.3] 我们在 ui模块 下实现了一个新的Scale9Sprite类.它的内部实现比之前的Scale9Sprite更为简洁,功能也更为强大. ...

  4. cocos2d-x CCScale9Sprite

    转自:http://www.cocos2dev.com/?p=295 前段时间看CCEditBox的时候,发现里面有个利用9宫格图缩放图片的,也就是缩放带圆角的图片. 这个比较有用处,很多游戏中有很多 ...

  5. 1cocos2dx扩展UI控制,CCControlSlider,CCScale9Sprite(九妹图。),CCControlSwitch,CCControlButton

     UI控件来自cocos2dx的扩展库.完好了UI方面的元素,使cocos2dx更加丰富多彩.使用扩展库需包括: #include "cocos-ext.h" USING_NS ...

  6. c#与java的区别

    经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...

  7. jquery和Js的区别和基础操作

    jqery的语法和js的语法一样,算是把js升级了一下,这两种语法可以一起使用,只不过是用jqery更加方便 一个页面想要使用jqery的话,先要引入一下jqery包,jqery包从网上下一个就可以, ...

  8. 【原】nodejs全局安装和本地安装的区别

    来微信支付有2年多了,从2年前的互联网模式转变为O2O模式,主要的场景是跟线下的商户去打交道,不像以往的互联网模式,有产品经理提需求,我们帮忙去解决问题. 转型后是这样的,团队成员更多需要去寻找业务的 ...

  9. 探究@property申明对象属性时copy与strong的区别

    一.问题来源 一直没有搞清楚NSString.NSArray.NSDictionary--属性描述关键字copy和strong的区别,看别人的项目中属性定义有的用copy,有的用strong.自己在开 ...

随机推荐

  1. 【比赛】NOIP2017 总结

    一.比赛过程 Day1: 拿到题目后,立即把所有题目都看了一遍,发现没有很虚的期望DP和概率DP,感到很庆幸.然后发现今年的题目顺序好像有点不对,T1是数论,T2像是模拟,这难道是把两天的基础题放到一 ...

  2. 【Cf #502 F】The Neutral Zone

    本题把$log$化简之后求得就是每个质数$f$前的系数,求系数并不难,难点在于求出所有的质数. 由于空间限制相当苛刻,$3e8$的$bitset$的内存超限,我们考虑所有的除了$2$和$3$以外的质数 ...

  3. 洛谷 P3797 妖梦斩木棒 解题报告

    P3797 妖梦斩木棒 妖梦是住在白玉楼的半人半灵,拥有使用剑术程度的能力. 题目描述 有一天,妖梦正在练习剑术.地面上摆放了一支非常长的木棒,妖梦把它们切成了等长的\(n\)段.现在这个木棒可以看做 ...

  4. Linux内核设计与实现第十周读书笔记

    第十七章 设备与模块 关于设备驱动与设备管理,我们讨论四种内核成分. 设备类型 模块 内核对象 sysfs 17.1设备类型 在Linux以及所有Unix系统中,设备被分为以下三种类型: 块设备,块设 ...

  5. Android学习笔记——关于onConfigurationChanged(转)

    从事Android开发,免不了会在应用里嵌入一些广告SDK,在嵌入了众多SDK后,发现几乎每个要求在AndroidManifest.xml申明Activity的广告SDK都会要求加上注明这么一句属性: ...

  6. spark 性能调优(一) 性能调优的本质、spark资源使用原理、调优要点分析

    转载:http://www.cnblogs.com/jcchoiling/p/6440709.html 一.大数据性能调优的本质 编程的时候发现一个惊人的规律,软件是不存在的!所有编程高手级别的人无论 ...

  7. python基础2--字典

    字典 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 语法: goods ...

  8. Python 字符串前面加u,r,b的含义

    1.字符串前加 u 例:u"我是含有中文字符组成的字符串." 作用: 后面字符串以 Unicode 格式 进行编码,一般用在中文字符串前面,防止因为源码储存格式问题,导致再次使用时 ...

  9. Python【操作Redis数据库】

    Redis非关系型数据库,数据存放在计算机内存中,无SQL语句.Redis中有多种数据类型,比较常用的数据类型是string类型和hash类型.平时我们使用RedisDesktopManager来对R ...

  10. nginx反向代理下载文件失败处理

    最近遇到了客户在从我们的服务器下载文件失败时的情况.然后把解决方案一并整理一下以备后续.需要说明的是,我们前端都是使用nginx来做反向代理,后面的逻辑处理采用php的方式. 1.缓存目录不可写 ng ...