Ingalime
-
Постов
354 -
Зарегистрирован
-
Посещение
-
Победитель дней
5
Активность репутации
-
Ingalime отреагировална gonzales в При публикации приложения на AppleStore вылезает ошибка - В каталог объектов xcode необходимо добавить значок приложения с разрешением 1024*1024 пикселей
По итогу все срослось.
Для сборки проекта в 10.4.1. необходимо удалить из папки с проектом папки iOSDevice64, LaunchScreen.TemplateiOS, и файлы Entitlement.TemplateiOS.xml и info.plist.TemplateiOS.xml. После чего пересобрать проект, создадутся новые файлы Entitlement.TemplateiOS.xml и info.plist.TemplateiOS.xml в которых будут необходимые директивы. У меня после этого пропали проблемы с размером экрана и AppStoreConnect без проблем съел мой ipa файл, при этом показал, что есть включенные материалы - значок приложения.
А ТЕПЕРЬ ЛОЖЕЧКА КАКККИ)))
При сборке приложения в 10.4.1 не применяется Заставка, включается стандартная, что бы я не делал, даже в новом пустом проекте, выставляю свою заставку, запускаю, а заставка все равно стандартная, также не работает цвет экрана заставки, корректно отрабатывают только иконки. Я порылся во всех местах, где это могло быть, вроде все правильно, в Deployment файлы правильные, на маке в папке LaunchScreenImage.imageset файлы правильные, а вот что должно быть дальше - не знаю(((
-
Ingalime отреагировална Bob32 в При публикации приложения на AppleStore вылезает ошибка - В каталог объектов xcode необходимо добавить значок приложения с разрешением 1024*1024 пикселей
Тоже ее получал. Потом убрал поддержку айпада и так выложил. Она уйдёт .
-
Ingalime отреагировална Alex7wrt в 9-Patch PNG FMX Generator
Сделал небольшую программу-генератор 9-patch заставок.
Достаточно выбрать цвет фона, логотип и его видимый размер, и программа сгенерирует 9-patch для всех необходимых в FMX размеров.
Примеры
Рисунок:
Полученные 9-Patch png:
Рисунок:
Полученные 9-Patch png:
Исходники: 9Patch Generator.zip
-
Ingalime отреагировална OnePeople в Посоветуйте компонет
Если платформа Android:
1. listbox тормознутый вариант, но да ооочень простой и удобный
2. Alcinoe - набор примитивов которым можно программно сделать любой список, скорость отрисовки бомбическая, косяк в том что создаются компоненты долговато, нужна грамотная реализация подрузки данных и создания компонентов, но по мне это лучший вариант для горизонтального списка.
3. ListView если список вертикальный то самое оно для вас, единственное с выравниванием и динамической высотой поработать нужно будет, но код есть в сети.
-
Ingalime отреагировална slav_z в Посоветуйте компонет
Вариантов много, но самый простой - использовать TListBox.
FramesList.zip
-
Ingalime отреагировална Tumaso в Посоветуйте компонет
@Ingalime
1. если высота фрейма зависит от данных, то да, вычисляйте высоту
2. по расположению создаваемых фреймов друго под другом - самый простой вариант использовать свойство Align у фреймов (устанавить в Top), для этого размещайте создаваемые фреймы на общем контейнере для них (например на VertScrollBox)
условно говоря примерно так:
procedure TForm1.AddFrame(const AParent: TFmxObject; const AData: TFrameData); var LFrame: TMyFrame; begin LFrame := TMyFrame.Create(Self); // или nil, если в дальнейшем будете сами уничтожать фреймы LFrame.Parent := AParent; LFrame.Align := TAlignLayout.Top; LFrame.Data := AData; // этим кодом предполагается заполнение фрейма данными, при котором фрейм заполнит выводимые компоненты и настроит свою высоту end; procedure TForm1.FillFrames; var I: Integer; begin for I := 0 to Data.Count - 1 do AddFrame(vsbFrames, Data[I]); // vsbFrames - TVertScrollBox для размещения фреймов, Data - список данных для отображения, каждый элемент - данные для отдельного фрейма end;
-
Ingalime отреагировална Maximus в Ошибка E2512 Type parameter 'TArgument' must be a non-nullable value type
В 10.4.1 починили. Главное чтобы следующим патчем не разломали.
-
-
Ingalime отреагировална Sergey Tartyzhev в TMemo. Не отображается курсор при изменении размера
BeginUpdate и EndUpdate приносят счастье
-
Ingalime отреагировална ophion в Как получить IMEI?
Дам вам подсказку из Android доков...
public String getDeviceId () Added in API level 1 Returns the unique device ID, for example, the IMEI for GSM and the MEID or ESN for CDMA phones. Return null if device ID is not available.
Requires Permission: READ_PHONE_STATE
public String getDeviceId (int slotId) Added in API level 23 Returns the unique device ID of a subscription, for example, the IMEI for GSM and the MEID for CDMA phones. Return null if device ID is not available.
Requires Permission: READ_PHONE_STATE
Parameters slotId of which deviceID is returned
-
Ingalime отреагировална Martifan в Как получить IMEI?
а для Android:
Uses Androidapi.JNI.Telephony, Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText; function TfMain.GetMyImei: string; var TelephonyObj: JObject; TelephonyManager: JTelephonyManager; begin Result := ''; TelephonyObj := SharedActivityContext.getSystemService(TJContext.JavaClass.TELEPHONY_SERVICE); TelephonyManager := TJTelephonyManager.Wrap((TelephonyObj as ILocalObject).GetObjectID); Result := JStringToString(TelephonyManager.getDeviceId); end; -
-
Ingalime отреагировална Олег Киреев в TMemo. Не отображается курсор при изменении размера
Можно и на кнопку:
procedure TForm1.Button1Click(Sender: TObject);
begin
TabControl1.Width := TabControl1.Width+200;
Memo1.WordWrap := false;
Memo1.WordWrap := true;
end;
-
Ingalime получил реакцию от Barbanel в При публикации приложения на AppleStore вылезает ошибка - В каталог объектов xcode необходимо добавить значок приложения с разрешением 1024*1024 пикселей
Надо по той ссылке, что я выложила написать гневный комментарий Марко Кенту.
А вам спасибо!!!
-
Ingalime отреагировална Олег Киреев в TMemo. Не отображается курсор при изменении размера
У меня помогло так:
procedure TForm1.FormResize(Sender: TObject);
begin
Memo1.WordWrap := false;
Memo1.WordWrap := true;
end;
С Уважением Олег.
-
Ingalime отреагировална IgorK11 в При публикации приложения на AppleStore вылезает ошибка - В каталог объектов xcode необходимо добавить значок приложения с разрешением 1024*1024 пикселей
набросал подробную инструкцию как делал на 10.3 собрав инфу с комментариев:
!!! Иконки в AppIcon.appiconset должны быть без прозрачности и альфа-канала, иначе получите ошибку ITMS-90717:Invalid App Store Icon.
1. распаковываем iOS1024fix.zip
2. заменяем иконки в asset_catalog\Assets.xcassets\AppIcon.appiconset\ и asset_catalog\Assets.xcassets\LaunchScreenImage.imageset\
3. если надо меняем цвет фона в asset_catalog\Assets.xcassets\LaunchScreenBackgroundColor.colorset\Contents.json
4. копируем папку asset_catalog на мак
5. в терминале перейти в неё, если скопировали на рабочий стол команда:
cd desktop/asset_catalog 6. выполняем команду:
actool --output-format human-readable-text --notices --warnings --app-icon AppIcon --output-partial-info-plist compilation_results/partial_Info.plist --target-device iphone --target-device ipad --minimum-deployment-target 11.0 --platform iphoneos --product-type com.apple.product-type.application --compile "compilation_results" "Assets.xcassets" в asset_catalog\compilation_results появятся 4 файла
7. копируем папку (или эти 4 файла) обратно c мака
8. в delphi компилируем ipa (Release / iOS Device 64-bit / Application Store)
9. Для удобства создадим папку "ios1024" в папке проекта
10. копируем файл iOSDevice64\Release\<ИмяПроекта>.Info.plist в папку "ios1024" убрав из имени "<ИмяПроекта>.", имя файла должно быть "Info.plist", регистр важен!
11. копируем из asset_catalog\compilation_results 4 файла в папку "ios1024"
12. копируем папку LaunchScreen.storyboardc в "ios1024" (именно папку а не её содержимое)
13. Редактируем Info.plist
13.1. Меняем:
<key>CFBundleIconFiles</key> <array> <string>ios_app_ico57</string> <string>ios_app_ico87</string> <string>ios_app_ico114</string> <string>ios_app_ico1024</string> <string>ios_app_ico60</string> <string>ios_app_ico120</string> <string>ios_app_ico180</string> <string>ios_spot_29</string> <string>ios_spot_40</string> <string>ios_spot_58</string> <string>ios_spot_80</string> <string>ios_spot_120</string> </array> на
<key>CFBundleIcons</key> <dict> <key>CFBundlePrimaryIcon</key> <dict> <key>CFBundleIconFiles</key> <array> <string>AppIcon60x60</string> </array> <key>CFBundleIconName</key> <string>AppIcon</string> </dict> </dict> <key>CFBundleIcons~ipad</key> <dict> <key>CFBundlePrimaryIcon</key> <dict> <key>CFBundleIconFiles</key> <array> <string>AppIcon60x60</string> <string>AppIcon76x76</string> </array> <key>CFBundleIconName</key> <string>AppIcon</string> </dict> </dict> 13.2. Удаляем в двух местах строки:
<key>CFBundleResourceSpecification</key> <string>ResourceRules.plist</string> 13.3. После строк:
<key>DTPlatformName</key> <string>iphoneos</string> добавляем:
<key>DTPlatformVersion</key> <string>13.5</string> 14. Заходим в delphi->Project->Deploment
15. Проверяем что бы выбран "iOS Device 64-bit"
16. Снимаем галочки с: (имена файлов будут ваши, ориентируйтесь по Option->Application->Icons)
17. в Deploment добавляем все файлы папки "ios1024"
18. изменяем Remote Path 5-и строкам:
19. компилируем IPA и отправляем через Transporter на маке
!!! При изменении версии билда в проекте не забываем изменить его в CFBundleVersion "ios1024"\Info.plist
iOS1024fix.zip
-
Ingalime отреагировална Bob32 в При публикации приложения на AppleStore вылезает ошибка - В каталог объектов xcode необходимо добавить значок приложения с разрешением 1024*1024 пикселей
пощелкай там в меню Файндера - Открыть Терминал по этому пути
-
Ingalime отреагировална krapotkin в Гибкие аналоги TListBox и TListView
вот мой вариант со свистелками
-
Ingalime отреагировална Tumaso в Гибкие аналоги TListBox и TListView
Почему вы решили, что стандартный TListView не подойдет? Прекрасно подойдет.
Посмотрите демо, идущее с делфи, в каталоге C:\Users\Public\Documents\Embarcadero\Studio\версия\Samples\Object Pascal\Multi-Device Samples\User Interface\ListView\VariableHeightItems. Для вашей задачи - идеальный старт
-
Ingalime отреагировална slav_z в Symbol 'Release' is deprecated
Release уже давно объявлен как deprecated.
Release позволяет выполнить отложенное удаления объекта (удалить, но не прям сейчас). Если это вам действительно нужно (иногда позволяет избежать некоторых ошибок), то просто повторите его код. Но пока его окончательно не убрали, лучше пользоваться существующим методом. Ругается и ругается - бог с ним. Если надо просто удалить объект, то Free, если с обнулением ссылки то FreeAndNil или Free + присвоить nil в коде (как у вас).
-
-
Ingalime отреагировална Tumaso в Посоветуйте компонет
Я бы сделал шаблонный фрейм, в котором бы выводил текст с помощью TText (или TLabel или другой), если нужно выводить картинки - TImage и т.д.
Далее для каждой карточки создаете свой экземпляр фрейма и в качестве параметров передаете значения отображаемых полей.
Легко в реализации, гибко, работает на всех платформах, включая Linux через FmxLinux
-
Ingalime отреагировална krapotkin в Постоянная подпись маркера
примерно так
r := rectf( bmp.width *0.5, 0, bmp.width, bmp.height*0.5) поиграть с коэффициентами
-
Ingalime отреагировална krapotkin в Постоянная подпись маркера
я сделал больше чем пять на всякий случай
а карту делать не стал - слишком много геморроя с ключами всякими
думаю несложно добавить в код
descriptor.Icon := bmp;
bmp.7z
-
Ingalime отреагировална krapotkin в Постоянная подпись маркера
ну и не вопрос
есть модель данных. если она меняется, изменится и отображение.
метод, создающий маркер, будет включать в себя и создание битмапа для него
я не помню, можно ли заменять битмап на маркере, скорее всего - да, но если даже нет - удалили старый, создали новый, никто ничего и не заметит даже