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

yooSee

Пользователи
  • Постов

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

  • Посещение

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

    1

yooSee стал победителем дня 7 февраля 2019

yooSee имел наиболее популярный контент!

Посетители профиля

Блок последних пользователей отключён и не показывается другим пользователям.

Достижения yooSee

  1. Привет форумчане, вопрос стоит в следующем. На телефоне создается zip архив и его нужно передать через мессенджер "WhatsApp" используя намерения делфи. как было раньше до Api 26 var Intent: JIntent; begin Intent := TJIntent.Create; Intent.setAction(TJIntent.JavaClass.ACTION_SEND); Intent.setDataAndType (StrToJURI('file:' + TPath.Combine(TPath.GetPublicPath, Form1.Label1.Text + '.zip')), StringToJString('*/zip')); SharedActivity.startActivity(Intent); сейчас нужно использовать FileProvider и я сделал следующее: В манифесте проекта прописано - <provider android:name="android.support.v4.content.FileProvider" android:authorities="%package%.provider" //здесь мой пакет android:exported="false" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/fileprovider" /> </provider> fileprovider.xml создан и добавлен в проект с содержимым <?xml version="1.0" encoding="utf-8"?> <paths xmlns:android="http://schemas.android.com/apk/res/android"> <external-path name="external_files" path="."/> </paths> Uri URI = FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName() + ".my.package.name.provider", createFile()); в данный момент не пойму как преобразовать данную строку в запрос Intent? Intent.setDataAndType .... ? Где описывается FileProvider ? что в URI?
  2. Всем привет, вот и я решил внести свою лепту в жизнь форума и сегодня мы разберемся с разрешениями на Delphi Rio под Андроид. Для примера мы будем использовать разрешения на чтение и запись с памяти устройства, для начала в нашем проекте выставим в Delphi>Project>Application>Uses Permissions галочки на Read External Storage и Write External Storage. в uses проекта добавьте следующее uses System.Permissions, Androidapi.Jni.Os, Androidapi.Helpers, далее создадим переменные var Form: TForm; .... FPermissionWrite: string; FPermissionRead: string; в Form.Create добавим следующий код procedure TForm.FormCreate(Sender: TObject); begin FPermissionWrite := JStringToString(TJManifest_permission.JavaClass.WRITE_EXTERNAL_STORAGE); //Значение на запись FPermissionRead := JStringToString(TJManifest_permission.JavaClass.READ_EXTERNAL_STORAGE); //Значение на чтение end; и теперь сам не посредственно запрос на подтверждение наших прав procedure TForm.Button1Click(Sender: TObject); begin PermissionsService.RequestPermissions ([FPermissionWrite, FPermissionRead], nil); end; //это вызовет окно с запросом разрешения прав ну и для проверки бросим на форму TMemo и пару TButton , в них реализуем сохранение и чтение из файла с памяти устройства procedure TForm.Button1Click(Sender: TObject); begin Memo1.Lines.LoadFromFile(TPath.Combine(TPath.GetSharedDocumentsPath, 'test.txt')); end; procedure TForm.Button2Click(Sender: TObject); begin Memo1.Lines.SaveToFile(TPath.Combine(TPath.GetSharedDocumentsPath, 'test.txt')); end; P.S. Напоминаю что для работы TPath нам понадобится подключить в Uses uses System.system.ioutils; Надеюсь материал будет полезен! video_2019-02-08_00-11-36.mp4 Permissions.zip
  3. yooSee

    OrangeUI

    в телеге ссылка на яд диск
  4. yooSee

    OrangeUI

    Русская локализация - (может кому надо), ложить по пути \OrangeUI 1.75\OrangeUIDesign\Source uLanguage.zip
  5. yooSee

    OrangeUI

    Скачать 1.75 полная версия
  6. yooSee

    OrangeUI

    Да это сайт их лагает, у меня 1.75 бетка есть
  7. yooSee

    OrangeUI

    Так же в телеграмм создал группу и канал посвященный OrangeUI , всем кому интересен данный компонент добро пожаловать @orangeui , будем разбираться вместе Канал - @orangeuichannel Группа - @orangeui
  8. помогло, спасибо! honor 8 - Android 8.0
  9. Привет Всем уважаемые! Пытаюсь сделать растягивание по содержимому компонента. Как это реализовано в мессенджерах типа WhatsApp если большой текст то растягивает (выделяется) по содержимому большое поле, если короткий то малое. Text2.Text := Memo1.Lines.Strings[4]; text2.Height := canvas.TextHeight(Text2.Text); //по высоте строки меняется т.к. там и есть одна строка в TText просто переносится WordWrap визуально. text2.Height:=canvas.TextWidth(text2.Text); // - так чушь Как это вообще реализовано кто нибудь сталкивался?
  10. дополню при нажатии на строку картинка появляется. как будто обновляется TThread.Synchronize(TThread.CurrentThread, procedure var ICount: Integer; AItem: TksTableViewItem; i: Integer; begin Memo1.Text := AResult; ksTableView1.BeginUpdate; application.ProcessMessages; try for i := 0 to Memo1.Lines.Count - 1 do begin AItem := ksTableView1.Items.AddItem('Новая строка', Memo1.Lines.Strings, 'Подробнее', atMore); AItem.Image.Bitmap.LoadFromUrl(Memo1.Lines.Strings); end; finally ksTableView1.EndUpdate; end; в таком варианте почему о не обновляется
  11. begin AItem := ksTableView1.Items.AddItem('Новая строка', Memo1.Lines.Strings, 'Подробнее', atMore); AItem.Image.Bitmap.LoadFromUrl(Memo1.Lines.Strings); end; ksTableView1.EndUpdate; end) так создаются и грузятся но первый список если нажать без картинок. нажимаю второй раз загружаются в старый список (уже созданный картинки) в новом нету и так далее
  12. Привет ребят! Помогите кто знает, попытаюсь доходчиво объяснить - имеется набор компонентов KernowSoftwareFMX - в нем использую TksTableView для вывода данных с Tmemo, в нем так же есть Image. В Tmemo с сервера грузится файл txt внутри которого строки с ссылками на изображения вида http://бла-бла/1.png Для загрузки использую FMX.Features.Bitmap.Helpers.pas - позволяет по прямой ссылке загружать изображение в TImage. что пытаюсь сделать? Нужно наполнять список TksTableView с Memo содержащий ссылки и в строках TksTableView - они же ListItem тоже самое что в ListView и загружать в image каждой строки картинки по ссылкам memo. AItem.Image.Bitmap := Image4.MultiResBitmap.Bitmaps[1].LoadFromUrl(Memo1.Lines.Strings[i]); - так ругается [DCC Error] untMain.pas(92): E2010 Incompatible types: 'TBitmap' and 'procedure, untyped pointer or untyped parameter' AItem.Image.Bitmap := Image4.Bitmap.LoadFromUrl(Memo1.Lines.Strings[i]); - так тожн не работает Глюк в том что первым делом создаются строки . а потом грузятся по очереди картинки в Image4. Как заставить подгружать картинки в TksTableView? Как ожидать хавершения загрузки каждой картинки в Image4 и после создавать AItem.Image.Bitmap?
×
×
  • Создать...