-
Постов
52 -
Зарегистрирован
-
Посещение
-
Победитель дней
2
Активность репутации
-
Satellite получил реакцию от Kitty в Seattle Android Ошибка exited with code 1
Скачать отдельно SDK, можно обновить при необходимости. При установке Seattle установить только NDK (пути оставить по умолчанию). У кого стоит уже Seattle и NDK можно пропустить. Прописать путь к новому SDK как у меня в настройках Android. По желанию можно поставить JDK той же версии, как и у меня.
-
Satellite получил реакцию от #WAMACO в StatusBar Color
Исправление проблемы с обновлением бара на Android 5.1:
В настройках проекта выбираем No TitleBar:
Project -> Options -> Version Info -> Theme: No TitleBar.
Код события Onresize необходимо переместить в конец Onshow, т.к. в Onresize перестанет возвращаться высота бара. D:
После выполнения этих действий, должно работать нормально на любом устройстве.
-
Satellite получил реакцию от Rusland в StatusBar Color
Исправление проблемы с обновлением бара на Android 5.1:
В настройках проекта выбираем No TitleBar:
Project -> Options -> Version Info -> Theme: No TitleBar.
Код события Onresize необходимо переместить в конец Onshow, т.к. в Onresize перестанет возвращаться высота бара. D:
После выполнения этих действий, должно работать нормально на любом устройстве.
-
Satellite получил реакцию от Равиль Зарипов (ZuBy) в StatusBar Color
Исправление проблемы с обновлением бара на Android 5.1:
В настройках проекта выбираем No TitleBar:
Project -> Options -> Version Info -> Theme: No TitleBar.
Код события Onresize необходимо переместить в конец Onshow, т.к. в Onresize перестанет возвращаться высота бара. D:
После выполнения этих действий, должно работать нормально на любом устройстве.
-
Satellite получил реакцию от zairkz в StatusBar Color
Действительно работает, думаю, лучше использовать эту функцию.
-
Satellite получил реакцию от zairkz в StatusBar Color
Исправление проблемы с обновлением бара на Android 5.1:
В настройках проекта выбираем No TitleBar:
Project -> Options -> Version Info -> Theme: No TitleBar.
Код события Onresize необходимо переместить в конец Onshow, т.к. в Onresize перестанет возвращаться высота бара. D:
После выполнения этих действий, должно работать нормально на любом устройстве.
-
Satellite получил реакцию от Равиль Зарипов (ZuBy) в StatusBar Color
Да, в обоих случаях Осталась проблема только с обновлением на Android 5.1.
-
Satellite отреагировална Равиль Зарипов (ZuBy) в StatusBar Color
function hasNavbar: Boolean; // uses Androidapi.JNI.Util, {$IFDEF ANDROID} var Window: JWindowExt; realSize: JPoint; screenSize: JPoint; metrics: JDisplayMetrics; difference, navBarHeight, resourceID: Integer; {$ENDIF} begin Result := false; {$IFDEF ANDROID} metrics := TJDisplayMetrics.Create; realSize := TJPoint.Create; screenSize := TJPoint.Create; Window := GetWindowExt; Window.getWindowManager.getDefaultDisplay.getRealMetrics(metrics); realSize.x := metrics.widthPixels; realSize.y := metrics.heightPixels; Window.getWindowManager.getDefaultDisplay.getSize(screenSize); if realSize.x <> screenSize.y then begin difference := realSize.y - screenSize.y; resourceID := TAndroidHelper.Activity.getResources.getIdentifier(StringToJString('navigation_bar_height'), StringToJString('dimen'), StringToJString('android')); if resourceID > 0 then navBarHeight := Trunc(TAndroidHelper.Activity.getResources.getDimensionPixelSize(resourceID)); if navBarHeight > 0 then Result := difference = navBarHeight; end; {$ENDIF} end; вот проверьте
-
Satellite отреагировална Равиль Зарипов (ZuBy) в StatusBar Color
есть еще один вариант (но не нашел его в интерфейсах, не объявлен)
for api 14 and up
boolean PermanentMenuKey = ViewConfiguration.get(this).hasPermanentMenuKey(); // true if physical, false if virtual for lower api:
boolean hasBackKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_BACK); boolean hasHomeKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_HOME); if (hasBackKey && hasHomeKey) { // no navigation bar, unless it is enabled in the settings } else { // 99% sure there's a navigation bar } источник
укороченный вариант
описание
boolean hasMenuKey = ViewConfiguration.get(context).hasPermanentMenuKey(); boolean hasBackKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_BACK); if(!hasMenuKey && !hasBackKey) { // Do whatever you need to do, this device has a navigation bar } источник
-
Satellite отреагировална Равиль Зарипов (ZuBy) в StatusBar Color
да проверил на своём Nexus'e - работает
resourceID := TAndroidHelper.Activity.getResources.getIdentifier(StringToJString('config_showNavigationBar'), StringToJString('bool'), StringToJString('android')); if (resourceID > 0) and (TAndroidHelper.Activity.getResources.getBoolean(resourceID)) 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;
-
Satellite отреагировална Равиль Зарипов (ZuBy) в Использование 9-patch картинок [Android]
TStyleObject поддерживает 9.png. Но это стилевой объект найти его можно в библиотеке FGX.
создать свой компонент основой которой будет TStyleObject
-
-
Satellite отреагировална mrseagull в TNotification в TThread (Windows 10)
А не в потоке работает? Попробуй отравлять в Synchronize
-
Satellite получил реакцию от Pax Beach в [Android] При попытке отправить письмо через стандартное приложение, не передаётся EXTRA_EMAIL (Intent)
Разобрался, в общем только так передаётся нормально:
procedure TfmSettings.CreateEmail(Const Recipient, Subject: string); var Intent: JIntent; JRecipient: TJavaObjectArray<JString>; begin JRecipient := TJavaObjectArray<JString>.Create(1); JRecipient.Items[0] := StringToJString(Recipient); Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_SEND); Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK); Intent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, JRecipient); Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString(Subject)); Intent.setType(StringToJString('vnd.android.cursor.dir/email')); SharedActivity.startActivity(Intent); end; -
Satellite отреагировална AngryOwl в Диалог-окна в 4.4.x стиле (Android)
Если я Вас правильно понял, то:
- нужно создать файлик style.xml
- содержимое файла должно быть типа
<resources> <style name="MyTheme.NoTitleBar.CustomBackground" parent="@android:Theme.Holo"> <item name="android:windowBackground">@drawable/splash_centered</item> <item name="android:windowNoTitle">true</item> <item name="android:windowFullscreen">false</item> </style> </resources> где в Вашем случае главное - @android:Theme.Holo
- далее этот файл (style.xml) надо задеплоить
Вот. Думаю это то что Вам нужно было.
Остальные параметры - на Ваше усмотрение.
-
Satellite отреагировална Andrey Efimov в [Android] При попытке отправить письмо через стандартное приложение, не передаётся EXTRA_EMAIL (Intent)
Всё правильно сделали, я как-то проморгал вашу тему, сейчас только увидел.
Посылать сообщение можно сразу нескольким адресатам, в java - это тип "String[]", на Delphi - это "TJavaObjectArray<JString>"
Про соответствие типов я писал тут: http://delphifmandroid.blogspot.ru/2014/07/java.html (пункт 4)
-
Satellite получил реакцию от Belov.V. в [Android] При попытке отправить письмо через стандартное приложение, не передаётся EXTRA_EMAIL (Intent)
Разобрался, в общем только так передаётся нормально:
procedure TfmSettings.CreateEmail(Const Recipient, Subject: string); var Intent: JIntent; JRecipient: TJavaObjectArray<JString>; begin JRecipient := TJavaObjectArray<JString>.Create(1); JRecipient.Items[0] := StringToJString(Recipient); Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_SEND); Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK); Intent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, JRecipient); Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString(Subject)); Intent.setType(StringToJString('vnd.android.cursor.dir/email')); SharedActivity.startActivity(Intent); end; -
Satellite получил реакцию от Andrey Efimov в [Android] При попытке отправить письмо через стандартное приложение, не передаётся EXTRA_EMAIL (Intent)
Разобрался, в общем только так передаётся нормально:
procedure TfmSettings.CreateEmail(Const Recipient, Subject: string); var Intent: JIntent; JRecipient: TJavaObjectArray<JString>; begin JRecipient := TJavaObjectArray<JString>.Create(1); JRecipient.Items[0] := StringToJString(Recipient); Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_SEND); Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK); Intent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, JRecipient); Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString(Subject)); Intent.setType(StringToJString('vnd.android.cursor.dir/email')); SharedActivity.startActivity(Intent); end; -
Satellite отреагировална Satellite в [Android] При попытке отправить письмо через стандартное приложение, не передаётся EXTRA_EMAIL (Intent)
Разобрался, в общем только так передаётся нормально:
procedure TfmSettings.CreateEmail(Const Recipient, Subject: string); var Intent: JIntent; JRecipient: TJavaObjectArray<JString>; begin JRecipient := TJavaObjectArray<JString>.Create(1); JRecipient.Items[0] := StringToJString(Recipient); Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_SEND); Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK); Intent.putExtra(TJIntent.JavaClass.EXTRA_EMAIL, JRecipient); Intent.putExtra(TJIntent.JavaClass.EXTRA_SUBJECT, StringToJString(Subject)); Intent.setType(StringToJString('vnd.android.cursor.dir/email')); SharedActivity.startActivity(Intent); end; -
Satellite отреагировална AngryOwl в [Android] Прозрачность TMemo Delphi XE8
Отредактировать стиль. Например, добавив новый для "прозрачного" TMemo.
Что-то типа такого:
object TLayout StyleName = 'memofreestyle' EnableDragHighlight = False Position.X = 280.000000000000000000 Position.Y = 249.000000000000000000 Size.Width = 290.000000000000000000 Size.Height = 175.000000000000000000 Size.PlatformDefault = False Visible = False TabOrder = 97 object TActiveStyleObject StyleName = 'background' Align = Contents EnableDragHighlight = False Size.Width = 290.000000000000000000 Size.Height = 175.000000000000000000 Size.PlatformDefault = False ActiveTrigger = Focused ActiveLink = < item CapInsets.Left = 7.000000000000000000 CapInsets.Top = 7.000000000000000000 CapInsets.Right = 7.000000000000000000 CapInsets.Bottom = 7.000000000000000000 SourceRect.Left = 238.000000000000000000 SourceRect.Top = 86.000000000000000000 SourceRect.Right = 318.000000000000000000 SourceRect.Bottom = 113.000000000000000000 end> SourceLink = <> object TRectangle StyleName = 'Rectangle1' Align = Contents EnableDragHighlight = False Fill.Color = x32000000 HitTest = False Sides = [] Size.Width = 290.000000000000000000 Size.Height = 175.000000000000000000 Size.PlatformDefault = False Stroke.Color = xC8282828 Visible = False end object TLayout StyleName = 'content' Align = Client EnableDragHighlight = False Size.Width = 290.000000000000000000 Size.Height = 175.000000000000000000 Size.PlatformDefault = False end end object TBrushObject StyleName = 'foreground' end object TBrushObject StyleName = 'selection' Brush.Color = x7F67A8D3 end object TFontObject StyleName = 'font' end end -
Satellite отреагировална Кривяков Виталий в Генерация рандомных букв. Android. Delphi XE7.
Добрый день!
Приложения, собираемые под мобильную платформу содержат отличие в работе со строками - нумерация символов идет с 0. Возможно дело в этом.
for i:=Low(exc) to High(exc) do begin delete(cl,Pos(exc[i],cl),1); end; Такой код должен работать одинаково на всех платформах.
Подробнее можно почитать здесь:
http://docwiki.embarcadero.com/RADStudio/XE6/en/Migrating_Delphi_Code_to_Mobile_from_Desktop
-
Satellite отреагировална Satellite в Генерация рандомных букв. Android. Delphi XE7.
Странно, но только вот так нормально работает на Android, чудеса.
Result:=copy(cl, random(length(cl)),1); -
Satellite отреагировална aleksandrguru в [FGX] Предложения о разработке компонентов
держи тогда
FMX.InterstitialAd.Android.zip
-
Satellite отреагировална estra в Delphi XE7: Программно проверить root права. [Android]
При том, что судя по вопросу, интересует как такую проверку сделать программно в своем приложении. Мне это тоже интересно, может кто нибудь ответить по существу вопроса?
-
Satellite отреагировална Brovin Yaroslav в Освобождение динамического массива. Delphi XE7
Добрый день,
Нужно прочитать:
Как правильно удалять контролы в RunTime? Пользоваться Free или DisposeOf?