Перейти к содержанию
Fire Monkey от А до Я

xenon54

Пользователи
  • Постов

    385
  • Зарегистрирован

  • Посещение

  • Победитель дней

    14

Весь контент xenon54

  1. Скорость будет говно если итемы будут контролами, если вручную просто отрисовывать свои итемы на канве, то скорость такая же как и у ListView, ибо он работает по такой же схеме.
  2. Плюнул копаться в 10к строках кода ListView и написал свой листвью велосипед. Хотя наверное в целом ListView достойный и вариативный компонент и я представляю проделанную работу его автора, но все равно не получается выполнить в нем все что хочется.
  3. Такого быть не может, т.к. у меня все работает после корректировки. Вы юнит скопировали? положили к себе в папку? вы уверены что проект компилируется с измененным кодом?
  4. Хотелось бы увидеть пример. Пытался проделать подобное с ListView, но к сожалению я так и не понял, как сделать поддержку поиска кирилических символов. Т.е. добавляю Items с русскими названиями, а он при вводе выдаёт пустую строку http://fire-monkey.ru/topic/781-otklonenie-filtratciia-teksta-ne-korrektno-rab/ Проблема не в кириллице, а в регистре, точнее в косяке реализации поиска с учетом регистра.
  5. uses FMX.Surfaces; //--------------------------------------- procedure TForm1.Button1Click(Sender: TObject); var sp : TBitmapCodecSaveParams; bs : TBitmapSurface; B : TBitmap; begin B := TBitmap.Create; // исходная картинка B.LoadFromFile('...'); sp.Quality := 70; bs := TBitmapSurface.Create; bs.Assign(; TBitmapCodecManager.SaveToFile('FileName', bs, @sp); bs.Free; B.Free; end;
  6. type TpopupBox_helper = class helper for TPopupBox procedure ShowPopup; end; procedure TForm1.Button1Click(Sender: TObject); begin PopupBox1.Items.Add('Item1'); PopupBox1.Items.Add('Item2'); PopupBox1.Items.Add('Item3'); PopupBox1.Items.Add('Item4'); PopupBox1.ShowPopup; end; { TpopupBox_helper } procedure TpopupBox_helper.ShowPopup; begin self.click; end;
  7. Решил проблему тем, что сделал буферное полотно в 2 раза больше и соответственно пересчет отрисовки всех объектов на нем пришлось делать. При переносе с холста большего по размерам в 2 раза чем тот на который переносится картинка, все нарисованные объекты стали четко выглядеть, не размыто. Можно сказать проблема решилась, но хотелось бы понять как оно должно быть правильно...
  8. Вопрос с невылезанием за контрол снимается, тут видимо криворукость не дала нужного эффекта при применении буферного битмапа с первого раза. Остается вопрос с размытостью. Если рисовать текст сразу на канве, то все четко получается, а если текст рисовать на буферной канве, а поотм переносить на основную canvas.DrawBitmap, то текст немного размыт.
  9. Эту тему читали? http://fire-monkey.ru/topic/781-otklonenie-filtratciia-teksta-ne-korrektno-rab/ У меня с поиском все впорядке в ListView. Ну как впорядке =\ Вот этот фикс сделал, который выше, ну и там строку поиска приходится "передергивать" если хочешь чтобы новые итемы попадали под фильтр, а не тупо вычеркивались и визибла.
  10. Здравствуйте. Подскажите пожалуйста как нарисовать текст на канве внутри контрола так чтобы если начало его координат было за канвой контрола, то за контролом он не рисовался. Поясню на примере: Canvas.FillText(TRectF.Create(0,-10,100,10),'11111',True,1,FillTextFlags,TTextAlign.Leading); Если написать это в методе Paint у контрола, то верхняя половина текста вылезет и нарисуется на форме. Как этого избежать? Пробовал создавать отдельный битмап, рисовать в нем, а потом через DrawBitmap переносить. Результата достигаю, но когда идет частая перерисовка, то подтормаживает сильно, ну и качество картинки что-то размытое получается при такм методе.
  11. Я к тому, что не очень верится что на мобилках стилизованный листбокс с картинками со 100 итемами не тормозит при скролле. А не верится потому, что пробовал. Под настольные ПК понятное дело не тормозит.
  12. 100 итемов в ListBoxe с картинками и не тормозит при быстром скроле? Ну и речь офк идет о мобильных платформах.
  13. И это лучший ответ на поставленный вопрос, ок
  14. Отлавливать изменения в событии OnResize и запрещать изменение размеров если выходит за рамки условий.
  15. Всем здрасте. При KeyboardType='NamePhonePad' под IOS при пустом Edit'е шифт на виртуальной клаве не нажат и соответственно печать начинается с маленькой буквы. Это фишка данного типа клавиатуры или это фишка данной клавы под IOS или это фишка ФМ? Есть ли возможность программно нажать шифт при появлении клавы?
  16. xenon54

    TListView.background

    http://fire-monkey.ru/topic/862-listitembackground/ так можно менять цвет отдельных итемов. Ну а если речь идет обо всем ListView, можно просто создать стиль для TListView.
  17. На сколько я знаю, фоновые процессы для андройда и IOS это принципиально разные вещи и реализация их. Я конечно хотел бы чтобы их реализовали, но как это будет выглядеть слабо себе представляю. Насчет "свистелок" тут я думаю все просто, Embarcadero решило задавить количеством, а не качеством. Думаю "свистелкам" скоро придет конец, ибо придумывать новые уже непросто. что можете посоветовать по этому поводу, какой опыт извлекли ? "В любой непонятной ситуации пиши DisposeOf" - шутка конечно, но теперь я понял что не стоит надеяться на автоматическое разрушение связей внутри объекта, только лишь удалив все внешние ссылки и воспользовавшись методом Free, я его теперь вообще почти не юзаю. Я не вкурсе откуда такой негатив, но я так понял что в основном он льется от тех кто пишет под андроид. Вскоре я закончу писать свое приложение для IOS'а и приступлю к его же написанию для андройда, быть может там у меня и начнет подгарать, но пока все неплохо. По теме: Я тоже отдал бы свой голос за реализацию фоновых режимов для обеих платформ, только так чтобы было как в сказке "из коробки" достал и пользуйся.
  18. 10к строк кода приложение для IOS ничего не падает и не виснет Хотя канеш изрядно пришлось потрахаться с решением вопросов освобождения памяти...
  19. Чаще всего в приложении основная ценность - идея, так что сарказм, быть может, не совсем уместен Да и в принципе, в ФМ можно сделать многое, ИМХО, просто попутно приходится очень много переделывать исходные компоненты и писать свои.
  20. Думаю что в AppMethod'e у тебя ничего не получится ибо VCL выпилен оттуда.
  21. Кажется понял о чем ты, предыдущий пост не в зачет
×
×
  • Создать...