Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > Flex

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 29.06.2011, 14:05
Merf вне форума Посмотреть профиль Отправить личное сообщение для Merf Посетить домашнюю страницу Merf Найти все сообщения от Merf
  № 1  
Ответить с цитированием
Merf
 
Аватар для Merf

Регистрация: Nov 2008
Адрес: Ukraine
Сообщений: 88
Отправить сообщение для Merf с помощью ICQ Отправить сообщение для Merf с помощью Skype™
По умолчанию Добавить картинку в Array collection

Здравствуйте.
У меня есть Array collection в которой находятся изображения загруженные при помощи
FileRefference.browse();. Но мне нужно добавлять туда фотографию другим методом, чтобы не пользователь выбирал фото (browse(), а можно было загрузить фотку с сервера. Пишу так:

Код AS3:
var loaderr:Loader = new Loader();
var requests:URLRequest = new URLRequest("http://site.com/objects-flex.jpg");
loaderr.load(requests);
photos.addItem(loaderr.content);//photos это ArrayCollection в котором уже есть фотки
И в photos добавляется пустая ячейка и картинки соответственно нету. Помогите пожалуйста
__________________
http://merfius.weebly.com/

Старый 29.06.2011, 15:11
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 2  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
А может сначала дождётесь загрузки?
__________________
Отряд Котовскага

Старый 29.06.2011, 15:55
Merf вне форума Посмотреть профиль Отправить личное сообщение для Merf Посетить домашнюю страницу Merf Найти все сообщения от Merf
  № 3  
Ответить с цитированием
Merf
 
Аватар для Merf

Регистрация: Nov 2008
Адрес: Ukraine
Сообщений: 88
Отправить сообщение для Merf с помощью ICQ Отправить сообщение для Merf с помощью Skype™
Код AS3:
loaderr.addEventListener(Event.COMPLETE, completeHandler);
public function completeHandler(evt:Event):void{
				tracer.text = "asd"+loaderr.bytesTotal;
				photos.addItemAt(loaderr, selectedIdForEditor);
 
			}
добавил такую штуку. Фотка не появилась, в массив опять вставило пустоту =(, хотя "loaderr.bytesTotal" показал реальный размер фотки, то есть она все-таки загрузилась

Добавлено через 23 минуты
Код AS3:
				switch(loaderr.dataFormat){
					case URLLoaderDataFormat.TEXT:
					tracer.text = "Herovo";
					break;
					case URLLoaderDataFormat.BINARY:
					tracer.text = "Horosho";
					break;
				}
Понял, он воспринимает его как текст. Но почему? И как сделать BINARY?
__________________
http://merfius.weebly.com/

Старый 29.06.2011, 20:52
Welcometo вне форума Посмотреть профиль Отправить личное сообщение для Welcometo Найти все сообщения от Welcometo
  № 4  
Ответить с цитированием
Welcometo

Регистрация: Mar 2011
Адрес: Уфа
Сообщений: 95
Отправить сообщение для Welcometo с помощью ICQ
loader.dataFormat = URLLoaderDataFormat.BINARY;

Старый 30.06.2011, 10:45
Merf вне форума Посмотреть профиль Отправить личное сообщение для Merf Посетить домашнюю страницу Merf Найти все сообщения от Merf
  № 5  
Ответить с цитированием
Merf
 
Аватар для Merf

Регистрация: Nov 2008
Адрес: Ukraine
Сообщений: 88
Отправить сообщение для Merf с помощью ICQ Отправить сообщение для Merf с помощью Skype™
Я уже от отчаянья запутался. Итак что у меня есть

Код AS3:
public var loaders:Loader = new Loader();
 
var requests:URLRequest = new URLRequest("http://smarthistory.org/assets/images/images/avignon.jpg");
loaders.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loaders.load(requests);
 
public function completeHandler(evt:Event):void{
				var spri:Image = new Image();
				spri.addChild(loaders.content);
				spri.x = 300;
				spri.y = 300;
				addChild(spri);
				photos.addItem(spri);
				photosList.invalidateList();
	}
Картинка вставляется на сцену в координатах 300, 300 нормально. Но в arrayCollection вставляется ячейка в которой ничего нету.

Код AS3:
<mx:TileList id="photosList" dataProvider="{photos}" />
Помогите пожалуйста мне, почему так, и если можно, как это можно решить?
__________________
http://merfius.weebly.com/

Старый 30.06.2011, 18:44
saprahan вне форума Посмотреть профиль Отправить личное сообщение для saprahan Найти все сообщения от saprahan
  № 6  
Ответить с цитированием
saprahan

Регистрация: Mar 2011
Сообщений: 48
Домен то тот же?

Старый 30.06.2011, 19:20
MXPain вне форума Посмотреть профиль Отправить личное сообщение для MXPain Найти все сообщения от MXPain
  № 7  
Ответить с цитированием
MXPain
 
Аватар для MXPain

Регистрация: Dec 2008
Сообщений: 305
Записей в блоге: 1
ну так вы родителя кладете в коллекшен, а не ваше изображение

Добавлено через 53 минуты
Код AS3:
			private var ph:Array = new Array();
			[Bindable]
			private var photos:ArrayCollection;
			private var imLdr:Loader = new Loader();
			public function loadImage():void 
			{
				photos = new ArrayCollection(ph);
				imLdr.load(new URLRequest("assets/grid-512.png"));
				imLdr.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoadComplete);
			}
 
 
			private function onLoadComplete (e:Event):void 
			{
				var bm:Bitmap = new Bitmap(Bitmap(imLdr.content).bitmapData);
				var o:Object = {source: Bitmap(imLdr.content).bitmapData};
				ph.push(o);
			}
вот так например можно, для отображения в тайллисте нужно задать itemRenderer


Последний раз редактировалось MXPain; 30.06.2011 в 20:15.
Старый 01.07.2011, 10:38
Merf вне форума Посмотреть профиль Отправить личное сообщение для Merf Посетить домашнюю страницу Merf Найти все сообщения от Merf
  № 8  
Ответить с цитированием
Merf
 
Аватар для Merf

Регистрация: Nov 2008
Адрес: Ukraine
Сообщений: 88
Отправить сообщение для Merf с помощью ICQ Отправить сообщение для Merf с помощью Skype™
Спасибо вам большое что-то вроде получилось. Еще последний вопрос. Почему иногда когда делаю invalidateList(); пропадают иконки изображений? То есть они есть но почему-то перестают отображатся.
__________________
http://merfius.weebly.com/

Старый 01.07.2011, 13:01
MXPain вне форума Посмотреть профиль Отправить личное сообщение для MXPain Найти все сообщения от MXPain
  № 9  
Ответить с цитированием
MXPain
 
Аватар для MXPain

Регистрация: Dec 2008
Сообщений: 305
Записей в блоге: 1
попробуйте invalidateDisplayList();

Создать новую тему Ответ Часовой пояс GMT +4, время: 19:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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