-
Постов
568 -
Зарегистрирован
-
Посещение
-
Победитель дней
57
Сообщения, опубликованные ENERGY
-
-
А мне Android 8.0 показался медленным, с артефактами при быстром переключении программ и жрущим аккум. Поэтому я перепрошил на последний 7, тут все идеально.
-
-
-
Обычно я делаю класс TCore, в котором все необходимое и настройки и переменные, я стараюсь формы и логику всегда отделять (раньше для Windows я вообще отделял логику и ядро в DLL ). Формы нужны только для отображения содержимого. Этот класс создаю в dpr до всех форм, Core соответсвенно в отдельном модуле, и глобальная переменная gCore там же в interface. Этот Core.pas подключаю уже везде. Это очень практично.
-
Цитата
При этом на Андройде он не тормозит, в отличие ListView.
В отличии от ListBox .
Может вам лучше Java Android Studio начать изучать?
-
Выход - использовать Berlin и ListView
-
А новое СДК нужно ставить или достаточно манифест поменять?
-
В 14.05.2018 в 13:50, Barbanel сказал:
К сожалению не вариант. У нас в ГУИ настроек есть: "Использовать HTTPS".
Боюсь забанят корпоративный аккаунт, если сами просекут.
Шеф спасибо не скажет, если узнает что нужно регать новую фирму)))
В своих программах всегда использую https. Всегда отвечал нет, все проходило. При использовании https не нужно указывать шифрование, это пишут и на стэке. В основном рекомендуют отвечать Да, если вы используете Apple библиотеки для шифрования (Security framework, CommonCrypto).
Я вообще не вижу проблемы. Отвечайте "Нет", это ускорит процесс рассмотрения.
Очень низкая вероятность того что вас забанят из за того что неправильно указаны пункты в анкете, просто не пропустят программу до исправления причины.
-
Use English, so you will increase the likelihood that somebody response to your question.
-
Если кому то нужна круглая кнопка со сглаживанием под Android\iOS - то ставьте компоненты @Равиль Зарипов (ZuBy), сделанные на основе модуля FMX.Graphics.Native.pas от одного китайского программиста.
https://github.com/rzaripov1990/ZMaterialComponents ( тут все готово, сам модуль отдельно скачивать не надо.)
Дальше кидаем TZNativeDrawFigureCircle1, в него лэйбл и TColorAnimation как указано выше.
OnClick работает без проблем, только не забудьте поставить кругу HitTest := true, а у лэйбла false.
-
Рестарт Windows и Android?
-
Перейти на Berlin update 2, в Токио под Android много багов.
-
Только что, Brovin Yaroslav сказал:
Если я все помню, то поиск в не упорядоченном списке Бинарным поиском - это O(nlog(n)). А поиск в словаре О(1).
Но ведь еще нужно время чтобы в словаре найти сответствие.
-
5 часов назад, Brovin Yaroslav сказал:
Чтобы поиск был быстрый, нужно использовать словарь. Время поиска будет O(1) против поиска в списке. Один из вариантов реализации может быть таким:
- В менеджере есть набор ваших списков (логические группы объектов) - список списков
- В менеджере есть словарь соответствия контрол -> индекс списка из (1)
- при добавлении контрола добавляете его в список и заносите контрол в словарь
- Поиск за О(1)
Проще использовать бинарный поиск для поиска своего индекса-идентификатора контрола, готовый бинарный поиск реализован в TList и его потомках, также в массивах.
-
4 часа назад, wamaco сказал:
Лучше спросить у хостера. Обычно у них в панели есть кнопка для включения этого - ткнул и появился https c сертификатом от Let's Encrypt.
-
-
1 час назад, kami сказал:
Можно это обойти (и довольно неплохо, не костыльно)... но это нужно кодить. Готового механизма нет.
Самый простой и быстрый вариант уже указали - TagObject, здесь самое сложное это вытащить из указателя дженерик класс. Я не знаю возможно ли это вообще, т.к. встречал на стэке инфу о том что никак.
Самый простой вариант использовать классический TObjectList, НЕ дженерик тогда вытащить ссылку из TagObject просто - TagObject is TObjectList, TagObject as TObjectList или TObjectList(TagObject).
Если нужно отличать один TObjectList от другого, я бы отнаследовался от него и сделал свой метод Add где устанавливал бы в Rect ссылку на список, там же можно добавить функцию для определения ID списка из Rect, а также ввел какой то идентификатор для списка.
-
47 минут назад, Alex7wrt сказал:
Ваш пример с фреймом немного из другой оперы, поскольку TObjectList нельзя указать в качестве Owner. Это список, а не комонент, иначе все было бы гораздо проще.
А для управления жизненным циклом обьектов как раз и установлен в True параметр AOwnsObjects.
Согласен, я только добрался до компа. Owner TComponent, а TObjectList <T> дженерик, а не обычный TObjectList еще больше усложняет. Как вытащить дженерик из указателя я не курсе, с обычным TObjectList это просто, но это уже другой вопрос.
-
Use TListBox as a Popup menu. Does TPopup already work nice on mobile OS?
Here is how to:
-
Имхо лучше использовать нативный THttpClient из System.Net.HttpClient.
Там есть и SSL - ставишь бесплатный Https сертификат на сервер, и как обычно использушь THttpClient - он автоматом (празрачно) будет шифровать и расшифроывать https трафик. Причем также шифруется Get\Post строка с параметрами.
-
При создании TRectangle - нужно указывать кто Owner - владелец, вместо nil.У каждого Rectangle Owner и будет нужный класс TObjectList .И вообще нужно всегда указывать Owner - ведь TObjectList отвечает за их уничтожение, это основная фича владельцев.Я недавно баг поймал с фреймом - если при создании TFrame указать Owner nil - то на фрейме не будет работать анимация TFloatAnimation . Так что TFrame.Create(Self формы) - все заработало.
-
High(CartList) - CartList это или Enumeration type - перечисление или массив.
В Enumeration значения идут от нуля. Т.е. TMyType = (Val1, Val2, Val3) - это по факту Byte со значениями 0, 1, 2.
High - вернет максимальный индекс из этого перечисления или массива. High(TMyType ) = 2 . Low соответсвенно вернет первый индекс - 0 или тот который идет первым (ведь массив может и не от нуля начинатся, если это указать в коде)
rz - обычная переменная integerЕсли 0 to 0 - цикл не выполнится.
-
3 часа назад, Savage сказал:
Почитал и аж расстроился
Delphi хоронят уже лет 15, это все слова. Нет идеальных инструментов. У всех какие то косяки, втч и у нативных средств, ведь все это придумывают люди, люди не роботы.
На деле Delphi отличное средство для мультиплатформенной разработки вполне сложных программ. Мне как фрилансеру вполне хватает. Производительность гораздо лучше чем у Angular\Ionic, которые по факту WebView - веб в браузере - очень тормозное решение и подходит только для формочки "логин\пароль". Также по производительности и глюкам Delphi имхо лучше чем ReactJS, и Xamarin aka Mono.
Во фрилансе огромная конкуренция, в основном индусы, в этом плане с Delphi можно быстрее разработать ПО чем предлагают сроки остальные.
Проблема Делфай в том что оно дорогое, и не так распространено - (это взаимосвязанный фактор) - таким образом сложно найти команду и мало проектов на нем разрабатывается, меньше сообщество и меньше документации и библиотек с готовыми решения Поэтому для одиночек это больше подходит.
Но конечно нужно смотреть на развитие - вот Токио получилась очень сырым продуктом, я до сих пор на Берлине пишу под 4 платформы, если следующая версия выйдет такой же ультраглючной, то следует задуматься.
А вообще хороший программист - это тот кто знает несколько языков, не бойтесь учить новое - опыт ускорит разработку с любым инструментом.
-
В 4/6/2018 в 17:44, Brovin Yaroslav сказал:
Другой вопрос, что я не уверен, что на бюджетные телефоны до 3000 будут ставить последнюю версию андроида. Она там тупо не взлетит. И пока такое требование к поддержке последней версии андроида выглядит сомнительно.
Выйдет Android GO - “Android 8 Oreo (Go Edition). Это урезанный Андроид, для бюджетных смартов. https://www.theverge.com/circuitbreaker/2018/3/1/17052912/what-is-android-go
To address those problems, Google has done three things:
- Make Android run better on phones with 1GB of RAM or less
- Make Android (the OS itself) take up less space
- Make Android’s preinstalled apps take up less space and use less data
Кстати Android 8 на данный момент хуже оптимизирован чем 7 (Android One - чистый Android без надстроек производителя). У меня смарт обновился до 8, поюзав его некоторое время - я перепрошил обратно на Android 7 - он очень быстрый. В 8 были заметны проблемы с производительностью ,к примеру при быстром переключении Оперы она слегка подлагивала и мерцала. При этом смарт у меня мощный - видео в 4к 30 fps , GTA SA на максималках, 4 гб оперативы.
Сокращается текст в компоненте TLabel
в TLabel
Опубликовано · Изменено пользователем ENERGY
Label1.AutoSize := false;
Label1.Width := Label1.Canvas.TextWidth(Label1.Text )