krapotkin

Пользователи
  • Публикаций

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

  • Посещение

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

    71

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

  1. http://www.delphiworlds.com/2018/06/targeting-android-8-and-higher-continued/
  2. ненене. одна картинка Ctrl+Alt+Shift+S выбрать в диалоге нужный размер картины и всё
  3. нет. там столько этих файлов, сколько скейлов вы закладываете в MultiResBitmap
  4. Illustrator вполне годно делает png Что-то вы там недокрутили, видимо.
  5. ярослав в отпуске. библиотека в альфе осенью максимум бету ждать, не более
  6. krapotkin

    Регулярное выражение для сайта...

    у меня почему-то не стояло разрешение ACCESS_NETWORK_STATE кроме того, вынес парсинг из Synchronize. Запустил на Токио СЕ. Листвью дергается. Думаю, вполне достаточно было бы без всякого парсинга заполнить его большими объемами LOREM IPSUM , чтобы получить аналогичный эффект
  7. krapotkin

    Как создать диаграмму из бд?

    нет никакого подключения просто в цикле по датасету создаете точки в сериях никакой автоматики. все вручную
  8. krapotkin

    TImage изображение по центру

    тут нужно просто вручную копировать исходный битмап в битмап с подходящими размерами, и эту копию выводить в Image
  9. идея в том, что если сложная (+-) формочка, то она не очень предсказуемо скроллится. тогда мы можем сделать скриншот любого компонента, или всей формы в mouseDown далее например так выводим TImage c полученным скриншотом поверх всего на заднем плане меняем фрейм или что там еще на новый тем временем по mouseMove сдвигаем TImage. Получается эффект листания страницы как в читалке, но без применения TabControl
  10. так PageControl же )) грубый вариант - это просто отлавливать жест и по окончанию жеста делать ActionNextTab если повозиться - с помощью мгновенно изготовленного скриншота можно добиться эффекта свайпа для любого фрейма.
  11. я наоборот, за фреймы. логику гораздо проще строить. Да и переключение форм свайпом вправо влево не сделать, например. Форм пара тройка достаточно. По приведенному примеру - компоненты создавать в потоке - не только бесполезно но и вредно. Создавать в главном потоке. К счастью, экран мобилы невелик, и если создавать то, что реально нужно прямо сейчас, вполне все норм про картинки и прочее - нужно понимать, что золотой пули нет. если вы превысите разумные пределы по памяти, ваше приложение грохнется. так что использовать файлы или нет - решение принимать по месту прописки со скроллом - если разобраться с ListView, то достаточно несложно делать любые раскладки. одно, что приходится кодить, вместо привычного накидывания компонентов Насчет DisposeOf. Уничтожение производится автоматически, поэтому вызывайте FreeAndNIL и не парьтесь. Только перед этим для компонентов например надо сделать Parent := NIL Уничтожение не должно производиться вами. Деструктор будет вызыван без вас, когда вы затрете все ссылки на ваш объект.
  12. Это для совсем простеньких случаев, когда классу потока не нужны поля, методы и все такое. TTask.Run ничем не отличается от этого А для более продуманных вещей потомки TThread по-прежнему рулят
  13. есть более интересный и по-мне, более правильный способ по нажатию в меню не сразу выполняете что-то, а ЗАПИСЫВАЕТЕ действие, которое ВЫПОЛНИТСЯ по событию закрытия мультивью тогда реакция наступает визуально правильная и дальше крутите колеса, запускайте потоки и все такое
  14. krapotkin

    Маршалинг/ДеМаршалинг в System.JSON

    маршалинг и демаршалинг по определению привязаны к типу объекта RTTI предоставляет список свойств и атрибутов и это все перегоняется в строку, передается по сети и восстанавливается из строки обратно на другом конце при десериализации поле JSON должно записаться в поле объекта. если такого поля нет, очевидно будет ошибка. Умеет ли XSO парсить новый JSON - не пробовал.
  15. krapotkin

    Просмотр картинок в ListView FMX

    Пишите автору @Равиль Зарипов (ZuBy)
  16. krapotkin

    Просмотр картинок в ListView FMX

    Все придумано до нас. В поиске набирайте ModernLV
  17. прекрасно все отрабатывает в андроид. я проверял. просто поставьте Create(true) наконец
  18. так вот он так и работает - не ссылки чистит, когда вы пытаетесь убить кого-то, а убивает тех, кто больше не нужен. поэтому не ваше дело вызывать деструктор, ваше - как раз зачистить ссылки но для кроссплатформенной совместимости я чаще всего пишу freeAndNil() . Там вызывается Free но на ARC внутри Free - пусто хоть 10 раз freeOnTerminate Загляните в код TThread.Terminate. Он не делает НИЧЕГО! вы же не показали, что у вас флаг Terminated как-то используется в Execute... До этого момента, видя, что в других местах вы гуляете по граблям, я уверен, что и тут - тоже. Думаю, что при уходе в фон нужно вообще все связи с камерой разрывать. и для возобновления просто делать все заново. чтобы уничтожить объект из обработчика объекта, нужно обладать смелостью и задором, конечно))). Но можно просто TTask.Run(procedure begin TThread.Synchronize(procedure begin comp1.parent := nil; FreeAndNil(comp1); end) end);
  19. DisposeOf нужно делать чтобы ВЫЗВАТЬ деструктор а для ARC обычно НЕ НУЖНО вызывать деструктор)) объект уничтожается, когда заканчиваются ссылки на него Parent держит ссылку на объект. пока ее не удалишь, то и объект не захочет удаляться сам. а пока он не удаляется, не почистит и Parent. и вот тогда идет ненужная принудиловка с разными извращениями.
  20. тут много чего хочется прямо поправить самое первое - убрать в классе TForm1 ссылки на экземпляр этого класса Form1 2. отказаться от idHTTP в пользу THttpClient 3. release обычно не требуется. если все написано хорошо, то FreeAndNil() самое то. а если плохо, то до конца все равно не спасет 4. архитектурно не очень идея визуальному компоненту привинчивать насмерть невизуальный функционал, ну да бог с ним 5. не надо думать что Potok.Terminate вообще хоть что-то делает, кроме как Potok.Terminated:=True. Это если у вас в Execute цикл, вы можете проверять if Terminated then exit... не более того. 6. если вы создаете компоненты динамически, то держите ссылки на них у себя, чтобы не делать for i := Form1.RoomsScrollBox.ComponentCount-1 if ... 7. концепция потока и его родителя должна быть такова: подразумеваем, что поток может пережить родителя, поэтому почаще надо проверять, if terminated то ничего не делая поскорее выходить из потока... 8. при уничтожении компонента нужно не только убить его FreeAndNil(component), но сначала compjnent.Parent := NIL; при соблюдении этих правил не требуется абсолютно никаких извращений при проектировании
  21. krapotkin

    Увеличение содержимого TImage

    непонятен вопрос
  22. короче, сорян, наврал оказывается у жены Note 4, на нем тоже все зашибись у старшего сына 5, но до него вряд ли быстро доберусь)
  23. krapotkin

    Регулярное выражение для сайта...

    а где кот? тот который листвью
  24. в силу отсутствия рамок на андроиде нет смысла Borderstyle выставлять. сбросил в sizable на Xiaomi Redmi Note 3 pro норм. на 5А - тоже. до 5-ки пока не добрался
  25. выложите тестовый проект, я могу запустить на xiaomi 3,5,5A