本章介绍两个知识点:
1. 在Cocos2d中添加系统组件;(本例中添加UIView 并嵌套一些View)
2. 解决View设置透明后,View中的其他组件也跟着透明的问题;详细问题如下:(网上找的网友的问题贴)
- “ 如何把背景图片设置为半透明 ”
-
- 现在的界面大概是这样的:最底下一个UIVIEW,这个UIVIEW有一个自己的背景图,
- 然后在这个UIVIEw之上有第二个VIEW,这个VIEW也有一个背景图。
- 现在要达到的效果是使第二个VIEW的图像不会覆盖最底层VIEW的背景图。
- 把上面一层VIEW的ALpha值改小我觉得不行,因为上面一层VIEW里面也有自己各种部件,
- 如果这么改的话,上面一层VIEW里面的所有的元素也会被透明化,但这不是我要的效果。。。
- 透明的仅仅是第二层的背景图。
以上是网友的问题,其实总结起来问题就是咱们今天要讲述的的第二点问题;
OK,首先介绍如何在Cocos2d中添加系统组件;
首先创建一个cocos2d项目,我这里使用的cocos2d版本为1.0.0
然后创建一个UIViewController类,名字为: MyUIView (这个创建文件步骤就不说啦~)
整个项目目录如下图所示:我们先在我们的MyUIView.xib中添加点东西,不然显示出来也不能明显看出;OK,双击 xib文件进入编写(我的xcode是4.1针对lion的版本)
我这里添加了一个View,然后放置了一个button(方便讲解本章的第二个问题)如下图:
OK,save下,然后开始编写在cocos2d中显示系统组件的代码:HelloWorldLayout.m 如下:
MyUIView *view = [[MyUIView alloc] initWithNibName:@"MyUIView" bundle:nil];
[[[CCDirector sharedDirector] openGLView] addSubview:view.view];
这两句代码位置写在了cocos2d默认给出的场景类中的构造函数里:
-(id) init
{
if( (self=[super init])) {
MyUIView *view = [[MyUIView alloc] initWithNibName:@"MyUIView" bundle:nil];
[[[CCDirector sharedDirector] openGLView] addSubview:view.view];
}
return self;
}
下面运行看效果:
很简单的,删除添加的组件也很easy!如下代码:
[self.updateUIView.view removeFromSuperview];
这样后还要加上[self.updateUIView.view release];这样才真正的从内存中释放掉~
然后下面我们开始讲解本博文的第二点知识点;
为了让大家更好的看出问题,我将button设置一个背景图,然后给装有button的view设置灰色的背景,如下图:
OK。现在设置我们要设置view半透明,OK,设置alpha为0.5.然后运行看到的效果图如下:
这个效果明显不对,因为我们想要的是view半透明,其中的button并不需要透明!!!!!
当时遇到此问题就开始各种尝试,因为当时我的项目有好多view,我尝试过在view添加一张ImageView然后将ImageVIew的图与背景图一样,并设置半透明,但是因为很多个view所以最后失败,然后尝试各种度娘,谷歌等,也去对应的群里问了 都是没有找到解决方法,但是最后终于让我尝试出来解决的方法;
其实view的alpha是针对整个view(包括其中的所有组件)的一个透明度,那么如果只是单纯的修改view的透明,其实只要更改它的opacity属性!
点击你的view然后点击其background属性,然后点击other,如下图:
将其下方的opacity属性调整为50%,OK,保存当前xib文件 ,运行项目!效果图如下:
这才是应该要的效果,view是50%透明的~组件不受影响;
其实这篇博文讲述的比较简单,属于细节,不过细节决定成败,希望大家遇到类似的细节问题,尽可能的解决不要给自己积累疑问,不然会对后期提高带来极大障碍;
OK,就到这里,童鞋们,撒乐个油~
分享到:
相关推荐
继续输入cd Cocos2d-iPhone-0.99.5(cd Cocos2d-iPhone-0.99.5为解压的cocos2d文件夹名称)进入cocos2d文件夹中。 4。继续输入./install-templates.sh则打开你文件夹下面的install-templates.sh进行cocos2d的安装。...
资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...
cocos2d-html5的api文档,官方未提供离线版,本人hack下来的,与在线版本完全一致,希望有用 :)
免费、开源的2D游戏开发引擎,适用于iphone、ipad游戏开发。
因为最近在学cocos2d-x,找了半天在网上也找不到一个离线的文档,于是自己抽空做了一个,全部内容提取自cocos2d-x中文官网的文档页http://cn.cocos2d-x.org/article 目前只提取了cocos2d-x部分内容。因为内容比较多...
【iOS-Cocos2d游戏开发】Cocos2d-iPhone动作Action-扩展动作 http://blog.csdn.net/tt5267621/article/details/7626450
cocos2d-iphone~cocos2d-html5移植之旅
Cocos2D-iPhone是 一个开源框架,利用它可以非常容易的在iPhone上开发2D游戏。它提供了物理,精灵(sprites),时差卷轴(parallax scrolling),支持iPhone touch和accelerator等很多功能。
Cocos2D-iPhone开发教程,从易到难,适合新手学习,老手进阶
cocos2d-x-2.1.5
cocos2d-objc-ext, Cocos2D iphone的扩展和实用程序类 Cocos2D扩展cocos2d-iphone的扩展和实用程序类。cocos2d-iphone-ext,将包括不同的类和库,而不是suitet发布的官方 cocos2d-iphone 。 一些类最初可以能会被...
在使用cocos2d-x开发游戏的过程中,为了实现逻辑和显示相分离。 在下通宵了一个晚上,写出了该事件类。 谨记,该事件只能用于cocos2d-x中。 事件发送者需要继承EventDispatcher类 事件接收者需要继承EventHandle类...
【iOS-Cocos2d游戏开发】Cocos2d-iPhone动作Action-瞬时动作 http://blog.csdn.net/tt5267621/article/details/7624781
cocos2d-x-3.2下载,不多说。或者可以下载另一个资源 cocos引擎老版本集合(cocos2d-x-2.2.1 - 3.5) http://download.csdn.net/download/crazymagicdc/9982656
知易Cocos2D-iPhone开发教程源代码。 移动开发新手入门必备。
资源名称:大富翁手机游戏开发实战基于Cocos2d-x3.2引擎内容简介:李德国编著的《大富翁手机游戏开发实战(基于 Cocos2d-x3.2引擎)》使用Cocos2d-x游戏引擎技术,带领读者一步一步从零开始进行大富翁移动游戏的开发...
继续输入cd Cocos2d-iPhone-0.99.5(cd Cocos2d-iPhone-0.99.5为解压的cocos2d文件夹名称)进入cocos2d文件夹中。 4。继续输入./install-templates.sh则打开你文件夹下面的install-templates.sh进行cocos2d的安装。...
书中汇聚了热门手机游戏《捕鱼达人》开发的实战经验,作者从最基础的内容开始,逐步深入地介绍了Cocos2d-x的相关知识点。此外,书中的教学资源获得《捕鱼达人》手机游戏的授权,读者可以从一流游戏开发中高起点地...
Cocos2d-iphone之HelloWorld
子龙山人兄弟翻译cocos2d-iphone教程.rar 学习游戏开发的可以看看,非常好的入门教程