Ошибка Adobe Animate Starling

Я создал голодную герою (воссоздал) в Adobe Animate с использованием фреймворка Starling. Загрузите с этого адреса ниже:

( http://www.test.farsvila.ir/animate_starling_Error.rar )

package {
    import flash.display3D.textures.Texture;
    import flash.utils.Dictionary;
    import flash.display.Bitmap;

    import starling.textures.Texture;
    import starling.display.Sprite;
    import starling.events.Event;
    import starling.display.Image;
    import starling.display.Button;
    import starling.core.Starling;
    import starling.events.Event;
    import screens.Welcome;

    public class Assets {

        [Embed(source = "media/graphics/bgWelcome.jpg")]
        public static const BgWelcome: Class;

        [Embed(source = "media/graphics/welcome_hero.png")]
        public static const WelcomeHero: Class;

        [Embed(source = "media/graphics/welcome_title.png")]
        public static const WelcomeTitle: Class;

        [Embed(source = "media/graphics/welcome_playButton.png")]
        public static const WelcomePlayBtn: Class;

        [Embed(source = "media/graphics/welcome_aboutButton.png")]
        public static const WelcomeAboutBtn: Class;

        private static var gameTextures: Dictionary = new Dictionary();

        public static function getTexture(name: String): Texture {
            if (gameTextures[name] == undefined) {
                var bitmap: Bitmap = new Assets[name]();
                gameTextures[name] = Texture.fromBitmap(bitmap);
            }
            return gameTextures[name];
        }
    }

}

Произошла ошибка --> Вызов возможно неопределенного метода fromBitmap через ссылку со статическим типом Class.


person Mohammad tavakoly    schedule 11.12.2016    source источник
comment
пожалуйста, предоставьте какой-нибудь код, убедитесь, что никто не загрузит этот файл RAR, поэтому этот вопрос не может быть решен, пока вы не опубликуете ту часть кода, которая генерирует это сообщение об ошибке.   -  person payam_sbr    schedule 11.12.2016
comment
Так и сделаю, братан :)   -  person Mohammad tavakoly    schedule 11.12.2016
comment
хорошо, спасибо :), а также то, что голосование против не мое, к сожалению, здесь нельзя говорить на фарси, но в chat.stackoverflow.com.   -  person payam_sbr    schedule 11.12.2016
comment
Спасибо, братан. О, неважно, что ты уверен :). Моя часть кода была добавлена ​​​​в мой пост. Пожалуйста, проверьте его и помогите мне   -  person Mohammad tavakoly    schedule 11.12.2016
comment
Как я могу поговорить об as3 и фреймворке starling?   -  person Mohammad tavakoly    schedule 11.12.2016
comment
У вас должно быть 20 репутации на Stack Overflow, чтобы говорить здесь!! :/   -  person Mohammad tavakoly    schedule 11.12.2016
comment
только 1_. вы действительно впервые используете StackOverflow? нужно больше усилий :D   -  person payam_sbr    schedule 11.12.2016
comment
Привет @payam_sbr Я не могу подключиться к URL-адресу сервера для отправки и получения переменной с помощью URLRequest URLLoader и так далее ... он работает на локальном хосте, но когда я помещаю весь код в воздух для Android и получаю доступ к Интернету с разрешением, он вообще не работает !? Можете ли вы мне помочь, я также разместил новый вопрос .. Спасибо и с наилучшими пожеланиями.   -  person Mohammad tavakoly    schedule 18.06.2017


Ответы (1)


на первый взгляд все ОК! согласно DOC fromBitmap является общедоступным статическим членом starling.textures.Texture

но проблема в том, что import flash.display3D.textures.Texture, который находится за пределами блока кода в вашем посте, заставляет меня повеситься на несколько минут!

поэтому в этом случае у нас одинаковые имена классов, две текстуры. компилятор тоже запутался (ошибка неоднозначной ссылки).

попытайся

Отредактировано

public static function getTexture(name: String): starling.textures.Texture {
    if (gameTextures[name] == undefined) {
        var bitmap: Bitmap = new Assets[name]();
        gameTextures[name] = starling.textures.Texture.fromBitmap(bitmap);
    }
    return gameTextures[name];
}

чтобы компилятору было понятно, какая текстура имеет в виду

Предложение

я думаю, вам действительно не нужен import flash.display3D.textures.Texture;, поэтому удалите его из кода по умолчанию (проблема решена без замены Texture на starling.textures.Texture)

person payam_sbr    schedule 11.12.2016
comment
@Mohammadtavakoly, мы должны изменить все текстуры на starling.textures.Texture, я отредактирую свой ответ прямо сейчас. - person payam_sbr; 11.12.2016
comment
Ю? мы добавили его в класс и расширили его из двух суперклассов starling.textures! - person Mohammad tavakoly; 11.12.2016
comment
@Mohammadtavakoly ты пробовал мой отредактированный код? также прочитайте дополнительное предложение, которое является еще одним ответом (не связанным с первым разделом) - person payam_sbr; 11.12.2016
comment
@Mohammadtavakoly также, если вам нужно больше обсуждения, присоединяйтесь к здесь чату, когда вы было ›20 представителей - person payam_sbr; 11.12.2016
comment
@Mohammadtavakoly Хорошо, так что этот ответ решен и должен быть принят, но для вашей новой проблемы опубликуйте его как новый вопрос, к сожалению, я не знаком с starling-framework и stage3d< /б>. - person payam_sbr; 11.12.2016
comment
Спасибо . Я увидел себя в вашем чате. - person Mohammad tavakoly; 11.12.2016
comment
Когда можно будет написать новый, я спрошу, примите мою признательность - person Mohammad tavakoly; 11.12.2016
comment
Невозможно прожить там любой комментарий. (n чат) - person Mohammad tavakoly; 11.12.2016
comment
Привет, Паям, твои предложения были действительно полезны. Сейчас я работаю с java. Тогда я начну с as3. Поэтому я не знаю, почему stage3D был добавлен в мой код! Спасибо и всего наилучшего . - person Mohammad tavakoly; 13.12.2016