1.flash as ç»ä¸ä¸ªå
2.FLASH TypeError: Error #1009: 无法访问空对象引用的源码属性或方法.
3.uiå辨ç
flash as ç»ä¸ä¸ªå
çæ¥ä½ 对flash ä¸ç¹ä¸äºè§£å¨å¸§ä¸å代ç é¦å å°±ä¸éè¦ç¬¬ä¸è¡ å¦åä¼æ¥é
æ¢ç¶ä¸è¦ç¬¬ä¸è¡ é£ä¹ç¬¬åè¡å®ä¹å½æ°ä¹å°±éäº ä¸éè¦åé¢çpublic åclass
æ以åé¢ç¬¬ 6 7 8è¡ é½ä¸éè¦private
第ä¹è¡ ä¸éè¦public
import flash.display.Sprite;var shere:Sprite=new Sprite();
shere.graphics.lineStyle(2,0xffccff);
shere.graphics.drawCircle(,,);
shere.graphics.endFill();
FLASH TypeError: Error #: 无法访问空对象引用的属性或方法.
此报错是因为你在“对象还没加载到舞台上”的时候,就让这个对象“访问了舞台”,源码因为它找不到舞台,源码于是源码截图寻找源码报错。先侦听这个对象是源码否被加载到舞台上,当它被加载到舞台上的源码巩义富源码坯机时候,你再执行你的源码init(),如此你就可以再init()里随意的源码访问stage了。具体代码如下:
package {
......
import flash.events.Event;//导入Event类
public function MouseDistance() {
addEventListener(Event.ADDED_TO_STAGE,源码 init);//加“加载到舞台”的侦听
}
private function init(e:Event):void { //加个参数
......
}
你的代码是实时显示鼠标到舞台中心点的距离,并且将“中心点”和“鼠标所在点”连线,源码我这里如上更改后运行正常
扩展资料:
源码主要功用有如下2种作用:
1.生成目标代码,源码即计算机可以识别的源码代码。
2.对软件进行说明,源码多语言收银源码即对软件的源码编写进行说明。为数不少的源码初学者,甚至少数有经验的青岛北站离栈桥源码程序员都忽视软件说明的编写,因为这部分虽然不会在生成的程序中直接显示,也不参与编译。
但是按键精灵保存源码说明对软件的学习、分享、维护和软件复用都有巨大的好处。因此,书写软件说明在业界被认为是能创造优秀程序的良好习惯,一些公司也硬性规定必须书写。
需要指出的是,源代码的修改不能改变已经生成的目标代码。如果需要目标代码做出相应的修改,必须重新编译
百度百科-源码
uiå辨ç
ä¸ãCocosç¼è¾å¨èªå¨å¸å±ç³»ç»ä¸»è¦æ¶ååºå®ä¸æ伸å±æ§ï¼
å¦å¾ï¼æ»å ±å¯ä»¥ä¿®æ¹æ§ä»¶çä¸ä¸å·¦å³å个å¾éåä¸é´ç两个æ伸æ¡å 个å±æ§ã
ææ
1.å½æå¼å ¶ä¸çä»»æä¸ä¸ªå¾éæ¶ï¼å½åèç¹ä¸ç¶èç¹ç对åºè¾¹çè·ç¦»å³è¢«åºå®ãå½ç¶èç¹ç大å°ä¿®æ¹æ¶ï¼å½åèç¹ä¸ç¶èç¹å¯¹åºè¾¹çè·ç¦»æ»æ¯ä¸åã
2.å½æå¼å ¶ä¸çä»»æ两个ç¸å¯¹çå¾éæ¶ï¼å½åèç¹ä¸ç¶èç¹å¯¹åºç两边çè·ç¦»æåºå®æ¯ä¾ãå³å½ä¿®æ¹ç¶èç¹ç大å°æ¶ï¼å½åèç¹å°ç¶èç¹å¯¹åºä¸¤æ¡è¾¹çè·ç¦»ä¹æ¯æ»æ¯ä¸åçã
3.å½å¼å¯ä¸é´ä»»æä¸æ¡æ伸æ¡ï¼å¦æ¨ªåæ伸æ¡ï¼èç¹ç宽度ä¸ç¶èç¹ç宽度ä¹æ¯åºå®ä¸åã
å ¶ä»
1. ä¸å¼å¯ä¸è¿°ä»»æå±æ§æ¶ï¼å¯¹è±¡é»è®¤ç¸å¯¹å·¦ä¸è§ä½ç½®ä¸åã
2. å½åä» æ§ä»¶å¯¹è±¡ï¼ææ¬ãFNTåä½ä¹æ²¡æï¼å容å¨ä¸¤ç§ç±»åææ伸æ¡å±æ§ã
äºãCocos 2d-x(Cocos Framework)ä¸çç¸å ³æ¦å¿µå代ç 设置
设计å辨çåå±å¹å辨çï¼
é¦å æ们éè¦äºè§£ä¸¤ä¸ªæ¦å¿µï¼å¨Cocos2d-xä¸æ两ç§å辨çï¼è®¾å¤å辨çãå±å¹å辨çã设å¤å辨çå³å½å游ææè¿è¡å¹³å°çå®é å辨çï¼è®¾è®¡å辨çå°±æ¯æ们设计ç游æçå辨çã
设计å辨çæ¯å¯è®¾ç½®çï¼æ¯æ们ç游æç¨åºè½å¤âæç¥å°âçå辨ç大å°ï¼æ们ççé¢è¶ è¿è¿ä¸ªåºåçé¨åé½ä¸ä¼æ¾ç¤ºã
设计å辨çä¸è¬å¨å¯å¨æ¶è¿è¡è®¾ç½®
AppDelegate::applicationDidFinishLaunching
ä¸è¿è¡ï¼ä»£ç å¦ä¸ï¼
director->getOpenGLView()->setDesignResolutionSize(,,ResolutionPolicy::FIXED_HEIGHT);
(è¿å¥ä»£ç ä¸è¾¹è¿æä¸å¥createWithRectè¿ä¸ªæ¯å¨æ¡é¢ç³»ç»ä¸ï¼å建游æ模æå¨ç¨çãå¯ä»¥ä¿®æ¹éè¾¹çRectçå边两个å¼æ¥ä¿®æ¹è®¾å¤å辨çï¼ä½è¿ä¸ªå¼å¨ç§»å¨è®¾å¤ä¸æ¯æ æçã)
è¿å¥ä»£ç ä»ä¹ææå¢ï¼
è¿éæ设计å辨ç设置为ï¼ï¼å¹¶æ游æçé¢è°æ´æ¹æ¡è®¾ç½®ä¸ºåºå®å®½åº¦ãä½è¿ä¹è®¾ç½®ä¹åï¼æ们åè¾¹åè·å设计å辨çæ¶å¾å°ç大å°å´ä¸ä¸å®æ¯ï¼ãè¿åæ¯ä¸ºä»ä¹å¢ï¼
ççæºç ï¼
转å°setDesignResolutionSizeçå®ä¹ççãéè¾¹åäºä¸äºå¤æåèµå¼ï¼æç»è°ç¨äºupdateDesignResolutionSizeï¼ç»§ç»è½¬å°updateDesignResolutionSizeéè¾¹ï¼è¿ä¸ªå½æ°çé¨å代ç å¦ä¸ï¼
//1.计ç®æ¸¸æçé¢å¨ç¼©æ¾è³å 满å±å¹çæ åµä¸XãYè½´ç缩æ¾ç:_scaleX= (float)_screenSize.width/ _designResolutionSize.width;
_scaleY= (float)_screenSize.height/ _designResolutionSize.height;//2.æ ¹æ®è®¾é çç¥ï¼è°æ´ç¼©æ¾çå设计å辨ç:if(_resolutionPolicy== ResolutionPolicy::NO_BORDER){ //å°XãY轴缩æ¾å¼è®¾ç½®ä¸ºå ¶ä¸çæ大è
_scaleX = _scaleY = MAX(_scaleX,_scaleY);
}else if(_resolutionPolicy== ResolutionPolicy::SHOW_ALL){ //å°XãY轴缩æ¾å¼è®¾ç½®ä¸ºå ¶ä¸çæå°è
_scaleX = _scaleY = MIN(_scaleX,_scaleY);
}else if( _resolutionPolicy == ResolutionPolicy::FIXED_HEIGHT) {
_scaleX = _scaleY;//å°XãY轴缩æ¾å¼åºå®ä¸ºY轴缩æ¾å¼ï¼è°æ´è®¾è®¡å辨çç宽度ï¼ä½¿è®¾è®¡å辨çç宽度å¨ç¼©æ¾åä¾ç¶è½å¤å 满å±å¹ã
_designResolutionSize.width= ceilf(_screenSize.width/_scaleX);
}else if( _resolutionPolicy == ResolutionPolicy::FIXED_WIDTH) {
_scaleY= _scaleX;//å°XãY轴缩æ¾å¼åºå®ä¸ºX轴缩æ¾å¼ï¼è°æ´è®¾è®¡å辨ççé«åº¦ï¼ä½¿è®¾è®¡å辨ççé«åº¦å¨ç¼©æ¾åä¾ç¶è½å¤å 满å±å¹ã
_designResolutionSize.height= ceilf(_screenSize.height/_scaleY);
}//å ¶ä»ç¼©æ¾çç¥ï¼EXACT_FITä¸ä½è°æ´
è¿æ®µä»£ç 主è¦åäºä¸¤ä»¶äºï¼
1.æ ¹æ®è®¾å¤å辨çå设计å辨ç计ç®æ¸¸æçé¢ç缩æ¾çï¼
2.è°æ´è®¾è®¡å辨çã
æ ¹æ®ä»¥ä¸æºç æ们åºè¯¥å¾å®¹æå°±è½å¤ç解å ç§ç¼©æ¾çç¥çæä¹ï¼
·NO_BORDERå°±æ¯å¨ä¿æ设计å辨ç大å°ä¸åçæ åµä¸ï¼å°æ¸¸æçé¢ææ¯ä¾ç¼©æ¾è³å 满å±å¹ã游æçä¸ä¸æè å·¦å³ä¸¤è¾¹å¯è½ä¼è¢«è£åªã
·SHOW_ALL(Cocos 2d-xé»è®¤æ¹æ¡)å°±æ¯å¨ä¿æ设计å辨ç大å°ä¸åçæ åµä¸ï¼å°æ¸¸æçé¢ææ¯ä¾ç¼©æ¾è³è®¾è®¡å辨ççå ¶ä¸ä¸è¾¹é¡¶ä½å±å¹ã游æä¸ä¸æè å·¦å³ä¸¤è¾¹å¯è½ä¼æé»è¾¹ã
·FIXED_HEIGHTå°±æ¯åºå®è®¾è®¡å辨ççé«åº¦ï¼è°æ´è®¾è®¡å辨çç宽度ï¼ä½¿è®¾è®¡å辨ççé¿å®½æ¯ä¸è®¾å¤å辨ççé¿å®½æ¯ç¸åï¼ç¶å缩æ¾æ¸¸æçé¢è³å 满å±å¹ã
·FIXED_WIDTHåä¸ï¼ä¸åçæ¯ä¿æ宽度ä¸åã
·EXACT_FITæ¯æç²æ´çæ¹å¼ï¼ç´æ¥å°æ¸¸æçé¢ç¼©æ¾å°å 满æ´ä¸ªå±å¹ï¼Xè½´Y轴缩æ¾æ¯çä¸ä¸å®ä¸è´ã
é£ä¹ï¼æ们åºè¯¥éæ©åªä¸ªæ¹æ¡å¢ï¼å¿ ç¶çæ们åºè¯¥éæ©FIXED_HEIGHTæè FIXED_WIDTHãå 为åªæè¿ä¸¤ä¸ªæ¹æ¡ä¸ï¼çé¢æ¯ä¼èªå¨æ ¹æ®è®¾å¤å辨çè°æ´è®¾è®¡å辨çç大å°å¹¶ä¸å 满å±å¹ã
æ¥ä¸æ¥å è½½çé¢ã
å è½½çé¢å¨HelloWorld::initä¸è¿è¡ï¼
auto rootNode= CSLoader::createNode("MainScene.csb");
auto size= Director::getInstance()->getVisibleSize();
rootNode->setContentSize(size);
ui::Helper::doLayout(rootNode);
addChild(rootNode);
è¿éé¤äºç¨createNodeæçé¢å è½½åºæ¥ï¼å¹¶æ·»å å°HelloWorldä¹å¤ï¼è¿åäºä¸¤ä»¶äºæ ï¼
• 设置å è½½åºæ¥ççé¢çContentSizeï¼è°ç¨å¯¹rootNodeè°ç¨äºui::Helper::doLayout对å è½½åºæ¥ççé¢è¿è¡å¤çã
• 为ä»ä¹è¦è¿ä¹è®¾è®¡å¢ï¼åæèªå¨çå¤å¥½åï¼
第ä¸ä¸ªçç±ï¼è·ç¼è¾å¨ä¸ä¸è´ï¼ç¬¬äºä¸ªçç±æ¯ï¼èªå¨è°æ´çé¢è¢«è®¾è®¡ä¸ºæ¯è¢«å¨çï¼å¦ææ¯ä¸»å¨è¿è¡çè¯ï¼å¯è½ä¼é æ大éçæ§è½æ失ââå¦ææ¯æ¬¡è®¾ç½®å¤§å°é½è¦éæ°éå计ç®ææçåèç¹çä½ç½®ï¼é£å¾æµªè´¹å¤å°CPUæ¶é´åã
ææï¼
设å¤å辨çX/Yç¸å¯¹è®¾è®¡å辨çX/Yè¾å¤§ï¼è®¾é çç¥ä¸ºåºå®é«åº¦
请ç¹å»è¾å ¥å¾çæè¿°
设å¤å辨çX/Yç¸å¯¹è®¾è®¡å辨çX/Yè¾å¤§ï¼è®¾é çç¥ä¸ºåºå®å®½åº¦
请ç¹å»è¾å ¥å¾çæè¿°
设å¤å辨çX/Yç¸å¯¹è®¾è®¡å辨çX/Yè¾å°ï¼è®¾é çç¥ä¸ºåºå®é«åº¦
请ç¹å»è¾å ¥å¾çæè¿°
设å¤å辨çX/Yç¸å¯¹è®¾è®¡å辨çX/Yè¾å°ï¼è®¾é çç¥ä¸ºåºå®é«åº¦
请ç¹å»è¾å ¥å¾çæè¿°
PSï¼æ举类åResolutionPolicyæ¯æ¡æ¶æä¾ç»æ们çæ¹ä¾¿çé»è®¤æ¹æ¡ãå ¶å®æ们å¨è®¾ç½®è®¾è®¡å辨çä¹åå¯ä»¥è·å设å¤å辨çï¼ç¶åèªå·±æ ¹æ®è®¾å¤å辨çè°æ´è®¾è®¡å辨çã