문제

I have this problem :

TypeError: Error #2007: Parameter type must be non-null. at flash.events::EventDispatcher/addEventListener() at Ch05_02()

when I am running my flash doc the Ch05_02 as file

package {
   import it.gotoandplay.smartfoxserver.SmartFoxClient;
   import it.gotoandplay.smartfoxserver.SFSEvent;
   import it.gotoandplay.smartfoxserver.SFSEvent.onJoinRoom;
   import it.gotoandplay.smartfoxserver.data.Room;
   import it.gotoandplay.smartfoxserver.data.User;
   import flash.display.*;

   public class Ch05_02 extends MovieClip{
      private var _sfs:SmartFoxClient;
      private var _avatarList:Array = new Array();

      public function Ch05_02() {
         _sfs = new SmartFoxClient(true);
         _sfs.addEventListener(SFSEvent.CONNECTION, onConnection);
         _sfs.addEventListener(SFSEvent.ROOM_JOIN, onJoinRoom);
         _sfs.addEventListener(SFSEvent.USER_ENTER_ROOM, onUserEnterRoom);
         _sfs.addEventListener(SFSEvent.USER_EXIT_ROOM, onUserLeaveRoom);
         _sfs.connect("127.0.0.1",9339);
      }

      private function onConnection(e:SFSEvent):void
      {
         var ok:Boolean = e.params.success;
         if (ok){
            _sfs.login("simpleChat","myname","");
         }
      }

      private function onRoomListUpdate(e:SFSEvent):void
      {
         _sfs.autoJoin();
      }
   }
}
도움이 되었습니까?

해결책

Looking at the documentation for SmartFox, it appears that you have the event names wrong. That's why the compiler is complaining about the type parameter being null. SFSEvent.CONNECTION, SFSEvent.ROOM_JOIN, et al do not exist and are therefore null.

You'll want to use the correct event names. SFSEvent.onConnection, SFSEvent.onJoinRoom, etc.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top