Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Flash Приложения: AIR, Zinc и тд. (http://www.flasher.ru/forum/forumdisplay.php?f=94)
-   -   htmlText +img = ничего (http://www.flasher.ru/forum/showthread.php?t=213765)

ther 05.01.2017 16:40

htmlText +img = ничего
 
Я случайно создал тему в другом разделе, хз, когда перенесут, посему продублирую
данный тег в air работает? Я как ни старался, но отобразить изображение не смог
Код AS3:

import flash.text.TextField;
 
                        var Description : TextField = new TextField();
                        //Description.selectable = false;
                        //Description.wordWrap          = true;
                        //Description.multiline  = true;
                        Description.width                  = 400;
                        Description.height                  = 400;
                        Description.border=true
                //        Description.opaqueBackground = mainRoot.style.secondColor;
//                        Description.styleSheet = style; 
Description.htmlText = ' <img src="https://dl.dropboxusercontent.com/u/68778662/icon.jpg" width="20" height="20">';
        addChild(Description);


undefined 05.01.2017 16:45

попробуй загрузить картинку через Loader чтоб убедиться что у флэша есть доступ к ней

ther 05.01.2017 16:50

доступ есть, моя задача загрузить изображение не из удаленного сервера, а из папки с программой.
И да, при запуске, создается объект Textures, куда загружаются все текстуры. Так что доступ точно 100% есть
вы и сами это можете у себя проверить, тут косяк или в особенностях каких то, либо сам тег не работает именно в air

undefined 05.01.2017 16:54

http://stackoverflow.com/questions/2...ges-in-air-app

ther 05.01.2017 16:59

я это читал

Цитата:

But when instead of the app-storage path, I put in the absolute url of an image on the web, like below:

imageTest.htmlText = '<img src="http://www.example.com/demo.jpg" border="0" />';
the image is displayed correctly.
у меня даже

Код AS3:

imageTest.htmlText = '<img src="http://www.example.com/demo.jpg" border="0" />';

не отображается.
При этом, свойства placeLoadStringContentInApplicationSandbox хз де

Добавлено через 41 минуту
В отношении содержимого AIR в изолированной программной среде безопасности приложения AIR игнорирует теги img в HTML-содержимом объектов TextField в ActionScript. Это позволяет избежать фишинг-атак

Добавлено через 58 минут
Код AS3:

HTMLLoader

как замена

undefined 05.01.2017 18:05

Вебвью же максимум одно на экране может быть или это ограничение уже неактуально?

ther 05.01.2017 18:15

Цитата:

Сообщение от undefined (Сообщение 1198409)
Вебвью же максимум одно на экране может быть или это ограничение уже неактуально?

понятия не имею, но мне и один с головой

undefined 05.01.2017 19:32

на крайняк можно отрисовывать из вебвью в битмапдату и тут же его(вебвью) сносить.

ther 06.01.2017 06:53

да, только есть небольшая проблема, это не работает на моб устройствах, что вернуло меня в точку старта((
TextField Показывает все нормально, кроме изображений
HTMLLoader - показывает все, но только десктоп
есть у кого то какие то соображения?
ПС
Задача следующая, создать мини хелп, где была бы возможность всунуть картинку и описаку к ней. Вариант битмап+тектсфилд с позиционированием одного относительного другого - самый последний

undefined 06.01.2017 13:52

что-то ты намудрил StageWebView прекрасно работал на мобилках еще когда я занимался air'ом(лет 5 назад)

Добавлено через 48 секунд
и как раз для него ограничение не больше одного на стейдже

caseyryan 06.01.2017 22:09

Ни разу не пользовался этим в эйр, но в плеере делал, и там отлично отображались картинки в htmlText. Сомневаюсь, что кто-то стал бы разрешать это в плеере, и запрещать в эйр.
Скорее всего ты просто не задаешь размеры картинки. Я всегда задавал размеры, и у меня все показывалось
Вот даже нашел полностью рабочий текст, который у меня в игре показывал сообщения через htmlText, еще во времена 9го плеера
Цитата:

"&lt;h1&gt; Теперь в игре есть менеджер новостей! &lt;/h1&gt; &lt;p&gt;
У нас появился менеджер новостей.
&lt;img src='http://88.212.210.84:5689/news/img/news.jpg' width='173' height='120' /&gt;
Цитата:

да, только есть небольшая проблема, это не работает на моб устройствах, что вернуло меня в точку старта((
Без проблем работает. У меня через него авторизация в соцсетях сделана, никаких ANE, чистый as3. 100% в твоем коде проблема

undefined 06.01.2017 22:20

не работает твоя картинка.Тем не менее подтверждаю что вот такой код:
Код:

<img src="https://dl.dropboxusercontent.com/u/68778662/icon.jpg" width="200" height="200">
в обычном fp показывает картинку, но при публикации в air - пусто.Кода никакого считай и нет, просто присвоение htmlText для текстфилда на стейдже.

undefined 06.01.2017 22:23

Вложений: 1
Код AS3:

import flash.display.*;
import flash.text.*;
import flash.events.*;
parse_btn.addEventListener(MouseEvent.CLICK,onParse);
function onParse(e:MouseEvent):void {
        tip_tf.htmlText=input_tf.text;
        //var tf:TextFormat=new TextFormat("Lato Bold",16,0x4E3129);
        //tip_tf.setTextFormat(tf, 0, 10);
        //tf=new TextFormat("Lato Italic",16,0x4E3129);
        //tip_tf.setTextFormat(tf, 10, 20);
}
stage.focus=input_tf;
stage.scaleMode=StageScaleMode.NO_SCALE;
//tip_tf.condenseWhite=true;
/*
<font color="#FF0000" size="20">header</font>
text text text text text text
image:
<img src="https://dl.dropboxusercontent.com/u/68778662/icon.jpg" width="200" height="200">
<img src="'http://88.212.210.84:5689/news/img/news.jpg' width='173' height='120'>
Then click the <b>Next</b> or the <b>Previous</b> buttons to highlight pieces. Also you can put selected pieces back in the tray. Or undo moves.
*/

input_tf.text="";
var fonts:Array =  ( Font.enumerateFonts() );
var str:String="";
for each( var fo in fonts ){
  //trace ( fo.fontName ,":", fo.fontStyle )
        str+="name:"+fo.fontName+", style:"+fo.fontStyle+"\n";
}
fonts_tf.text=str;

tips_parser.swf   (50.8 Кб)

undefined 06.01.2017 22:26

Upd:Собирал под air для десктопа,возможно в этом вся разница

ther 07.01.2017 06:53

Спасибо, уже не надо. Странные вы, я вам привел цитаты с сайта адоб и тем, что они сами ПИШУТ, что это не работает для моб устройств. А вы даете советы по типу, я в air не работал, но косяк в твоем коде, даже читать дальше не стал. При этом, привел же конкретный код. Или я собрал под десктоп. Под деском оно работает, я много раз указывал, что мне для моб устройств.
ПС
сделал
textfield+bitmap

caseyryan 07.01.2017 09:18

Цитата:

не работает твоя картинка.
Она и не должна работать) Это с древней игры пример, сервера уже давно нет :D
Цитата:

Странные вы, я вам привел цитаты с сайта адоб и тем, что они сами ПИШУТ, что это не работает для моб устройств.
Там речь шла о вебвью, как я понял. А вебвью работает на мобилах, и картинки отображает. Только что открывал авторизацию вк в нем, и страница загрузилась вместе с логотипом.

Похоже это очередной баг, так как по логике applicationDirectory и applicationStorageDirectory должны входить в изолированную программную среду, но по факту они тоже игнорируются. Специально собрал мобильный проект, и да, подтверждаю, код, который работает в TextField.htmlText на десктопе и плеере, не работает на мобиле. Все теги html текста, кроме img оторбажаются

undefined 07.01.2017 12:31

Цитата:

Под деском оно работает
В том то и прикол что в любом AIR'e оно не работает. Не важно десктопном или мобильном.
Цитата:

Там речь шла о вебвью
Изначально речь шла о html текстфилдах, а вебвью был предложен как воркэраунд никто и не говорил, что он не работает на мобилах т.к. компонент специально под них.
PS:интересно каким образом можно сделать фишинговую атаку через картинку в хтмл текстфилде?

caseyryan 07.01.2017 12:42

Цитата:

компонент специально под них.
Он и на десктопе есть, у меня и в десктопных приложениях для вк через вебвью авторизация происходит. Так что этот компонент специально для AIR, но не конкретно для мобил
Цитата:

PS:интересно каким образом можно сделать фишинговую атаку через картинку в хтмл текстфилде?
Тоже задался этим вопросом :D У индусов в адоби какая-то особая логика видимо. То есть через StageWebView фишинговую атаку сделать нельзя, а через картинку можно)
По идее ничто не мешает тебе сделать в своем приложении поддельное окно авторизации в том же фейсбуке, в которое юзер введет свои данные и вуаля, ты получил чужой логин и пароль, дальше выдал якобы ошибку ввода и попросил ввести данные еще раз, на этот раз уже показав реальный вебвью. Но для этого совсем не обязательно делать это через htmlText или втроенными swf


Часовой пояс GMT +4, время: 09:16.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.