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

Равиль Зарипов (ZuBy)

Модераторы
  • Постов

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

  • Посещение

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

    264

Весь контент Равиль Зарипов (ZuBy)

  1. Понятно. короче проще не заморачиваться с мобильным приложением а просто с телефона в браузере открывать. Можешь выслать свои приложения, может разберусь что там к чему. у меня код состоит только из разбора json'a который формируется на сервере. весь парсинг написан на php, по нескольким причинам: 1) всегда есть доступ к файлам чтобы отредактировать, если на сайте изменился дизайн или что-то изменили. 2) без надобности перекомпилировать приложение в делфи 3) не нужно заморачиваться с ssl т.к. на андроид 6 не работает ssl да и таскать с собой либы на айос не вариант offtop: не делайте через TWebBrowser, это глупо. какой смысл тогда от приложения? можно сделать закладку и вытащить её на раб. стол... p.s. приложения написанные для личного использования, потому что некоторые компании не хотят создавать приложения для удобства пользователям приходится самому решать
  2. А что в Android является нативным для набора текста? ничего, нативные только TMapView, TWebBrowser
  3. я делал через xml rpc api, когда Ярослав дал ключ с этому протоколу. а вообще логика такая 1) эмулировать http запрос с приложения, то что отправляет браузер (смотреть снифером что и куда уходит и что приходит) 2) разобрать html код присланный в ответе и вывести необходимое в приложении у меня таких несколько приложении, для собственных нужд
  4. для андроид нет нативных компонентов Edit и Memo, все равно используется стиль. а вот на Windows/IOS есть все равно придётся использовать стиль
  5. только если самому этим заниматься этим, по дефолту нет такой возможности
  6. Всё работает! Спасибо. А ещё, подскажите, как русифицировать? Или так и будет "Yes" - "No"? поправить cамому в файлике FMX.Consts.pas и положить рядом с проектом
  7. 1) спросить у админа сайта есть ли протокол XML RPC API для доступа к контенку сайта 2) сделать парсинг сайта
  8. с использованием анонимных функции жить стало легче, как по мне. я их использую не только в потоках, а как отложенное действие.. Приведу пример: Есть форма в которой выбираются некие данные, допустим местоположение. Эта форма вызывается из нескольких мест, т.е. результат выбора пользователя отправляется всегда в разные формы и в визуальные компоненты. Как я делал это раньше: Заводил некую глобальную переменную и по ней смотрел кто вызвал и куда отправить myVar := 'form1'; // для примера if myVar = 'form1' then form1.lbLocation.Text := myLocation // (допустим тут хранится выбранные данные пользователя ) else и т.д. Как теперь: Переопределяю метод формы Show с параметром aProc: TThreadProcedure procedure Show(aProc: TThreadProcedure); overload; создаю переменку FProcedure:TThreadProcedure в privat секции В методе Show присваиваю FProcedure:= aProc; Show; // обычный метод формы При выборе пользователем местоположения, выполняется вот такой код FProcedure;// наша отложенная процедура Close; // закрываем форму и задаю при показе формы процедуру которая должна выполнится при выборе местоположения 1 вариант myLocationForm.Show(procedure begin Form1.lbLocation.Text := myLocation end); 2 вариант myLocationForm.Show(procedure begin ShowMesage(myLocation); end); Некая свобода действий всегда хорошо, и довольно просто в реализации
  9. Ставлю breakpoint, дебагер туда не заходит почему-то ) и не зайдёт, для отладки нужно убирать поток. такая ересь
  10. думаю да, вот вы нам и скажите) а вообще если он использует основной поток для общения с системой, то и доп. потоки должны быть разрешены
  11. проект приложите без бинарников update: проблем не выявлено попробуйте использовать SetFocused(Edit1); Или как-то так ActiveControl := Edit1;
  12. какая платформа? на windows все прекрасно работает UPDATE не работает
  13. case неправильный Item.Index должно быть
  14. Тема оказалась настолько интересна что занялся ей подробней. Мы с zairkz убили много времени, чтобы понять как выкрасить в один цвет без полупрозрачности, взяв скриншот и фотошоп определили, что затемнение происходит на 40% Решение родилось само собой, затемнить цвет ToolBar'a на 40% и цвет выровняется. Казалось бы можно осветлить цвет для подложки и цвет тоже выровнится, но например белый или светлые цвета нельзя еще осветлить. также написал процедуру для определения высоты статус бара и панели навигации procedure androidGetBounds(out statusBar, navigationBar: Integer); {$IFDEF ANDROID} var KeyCharacterMap: JKeyCharacterMap; resourceID: Integer; ScreenService: IFMXScreenService; sScale: Single; {$ENDIF} begin navigationBar := 0; statusBar := 0; {$IFDEF ANDROID} if TOSVersion.Check(5, 0) then // вроде только работает с 5.0 ниже нет устройства проверить begin sScale := 1; if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService, IInterface(ScreenService)) then sScale := ScreenService.GetScreenScale; //получаем скейл resourceID := TAndroidHelper.Activity.getResources.getIdentifier(StringToJString('status_bar_height'), StringToJString('dimen'), StringToJString('android')); if resourceID > 0 then statusBar := Trunc(TAndroidHelper.Activity.getResources.getDimensionPixelSize(resourceID) / sScale); if not TJKeyCharacterMap.JavaClass.deviceHasKey(TJKeyEvent.JavaClass.KEYCODE_BACK) then // проверка на существование наэкранных кнопок или физических begin resourceID := TAndroidHelper.Activity.getResources.getIdentifier(StringToJString('navigation_bar_height'), StringToJString('dimen'), StringToJString('android')); if resourceID > 0 then navigationBar := Trunc(TAndroidHelper.Activity.getResources.getDimensionPixelSize(resourceID) / sScale); end; end; {$ENDIF} end; и в модуле FMX.Platform.Android нужно изменения внести (если вы используете измененный модуль для Intel'а) // Fix by Flying Wang & CallInUIThread( procedure begin if (not PlatformAndroid.GetFullScreen(nil)) and (SharedActivity.getWindow.getAttributes.Flags and TJWindowManager_LayoutParams.JavaClass.FLAG_FULLSCREEN <> TJWindowManager_LayoutParams.JavaClass.FLAG_FULLSCREEN) and (SharedActivity.getWindow.getAttributes.Flags and TJWindowManager_LayoutParams.JavaClass.FLAG_TRANSLUCENT_STATUS <> TJWindowManager_LayoutParams.JavaClass.FLAG_TRANSLUCENT_STATUS) // fix by ZuBy ... SystemBar.zip
  15. даже можно свой класс создать для удобства, кстати вылетело из головы. через адаптеры если не ошибаюсь
  16. Вы снова ответили сами, убрать инди нужно. Из хелпера теперь...
  17. Ярослав, а чем Ваш способ лучше чем я продемонстрировал в другой похожей теме? По сути он делает тоже самое, только кодом. Какие плюсы?
  18. а разве не просто DESC? просто никогда не встречал DESCENDING
×
×
  • Создать...