【问题标题】:as3 dynamic class convert in runtimeas3 动态类在运行时转换
【发布时间】:2012-05-12 01:05:07
【问题描述】:

这是我得到的:

public var myDynamicClass:MovieClip;

我想在运行时将其转换为此类。

public class MyWishClass extends MovieClip{
    public var myId:String;
}

一个解决方案是做接下来的事情:

   myDynamicClass.myId = null as String;

问题在于我在下一行中变得错误:

myDynamicClass instanceOf MyWishClass 

我能做什么?

编辑: 基本上我在运行时更改动态类,通过添加他的属性,我想将它转换到另一个已经获得这些属性的类。

【问题讨论】:

  • 你在尝试做一些事情吗type conversions?
  • @SamDeHaan 是的,但我正在运行时创建我的课程。

标签: actionscript-3 class dynamic runtime


【解决方案1】:

找到了,

答案是否定的:(不可能……

我所做的唯一工作是创建新的 MyWishClass 并将 myDynamicClass 传递给他,所以他基本上是在扭曲他。

【讨论】:

    【解决方案2】:

    不完全理解你的问题,但是..

    你不能只做这个吗?

    public var myDynamicClass:MyWishClass;
    /* --- */
    myDynamicClass = new MyWishClass();
    myDynamicClass.myId = "some string";
    

    【讨论】:

      【解决方案3】:

      您将其键入为 MovieClip,因此它将始终是 MovieClip,除非您将其创建为 MyWishClass 或按以下方式键入:

      public class MyWishClass extends MovieClip{
          public var myId:String;
      }
      

      然后在别处:

      public var myDynamicClass:MovieClip = new MyWishClass();
      
      MyWishClass(myDynamicClass).myId = "test";
      

      或将其创建为:

      public var myDynamicClass:MyWishClass = new MyWishClass();
      

      【讨论】:

        猜你喜欢
        • 2017-08-21
        • 2012-09-06
        • 1970-01-01
        • 2020-11-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多