• 0
Necroarcano

[XE8] - fgActionSheet and TakePhotoFromLibraryAction

Вопросы

Olá, estou tentando usar o fgActionSheet com o TakePhotoFromLibraryAction e não funciona!

 

Já tentei até mesmo programar no OnClick da Action e dentro chamar: TakePhotoFromLibraryAction.ExecuteTarget(nil); mas não é aberto a biblioteca de fotos.

 

O que posso fazer para isso funcionar?

 

Obrigado!

 

 

 

By Google Translator:

 

Hello, I am trying to use the fgActionSheet with TakePhotoFromLibraryAction and does not work!
 
I've tried even program the OnClick of Action and within call: TakePhotoFromLibraryAction.ExecuteTarget (nil); but it is not open to photo library.
 
What can I do for this to work?
 
Thanks!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 ответов на этот вопрос

  • 0

 

Not " Self.FundoImage.Assign(Image); "

 

Working code is: "Self.FundoImage.Bitmap.Assign(Image);"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
This code, work in first time:
 
  TTask.Run( procedure
             begin
               Sleep(400);
               TakePhotoFromLibraryAction.ExecuteTarget(nil);
             end);

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

I reinstall Delphi - clean and without updates. Still not work. But, if I put this code below works:

 

TTask.Run( procedure
             begin
               Sleep(1000);
               TakePhotoFromLibraryAction.ExecuteTarget(nil);
             end);
 
Thanks!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.

  • Похожий контент

    • От x11
      procedure TfmEditObject.TakePhotoFromLibraryAction1DidFinishTaking( Image: TBitmap); begin ShowMessage('TakePhotoFromLibraryAction1DidFinishTaking'); AddPhoto(Image); end; procedure TfmEditObject.AddPhoto(Image: TBitmap); Var item: TListBoxItem; // ListItemImage: TListViewItem; imageV: TImageViewer; begin item := TListBoxItem.Create(lbPhotos); item.parent := lbPhotos; item.text := ''; item.Width := lbPhotos.Width; imageV := TImageViewer.Create(lbPhotos); imageV.HitTest := False; imageV.Parent := item; imageV.Align := TAlignLayout.Client; imageV.Bitmap.Assign(image); item.SetFocus; // ListItemImage := ListView1.Items.Add; // ListItemImage.Height := self.Width; // ListItemImage.Bitmap.Assign(Image); end;  
      При нажатии на SpeedButton получаю invalid class type cast.
      Ставлю бряку (на картинке подтверждение). Но ошибка вываливается до неё.
      ShowMessage('TakePhotoFromLibraryAction1DidFinishTaking');  не появляется


    • От Роман Фил
      Всем привет пытаюсь грузить файлы изображения с телефона Android на сервер методом post запроса. Для этого один из параметров запроса должен содержать полный путь к файлу. В ActionList есть стандартная опция TakePhotoFromLibraryAction - к с нее выдрать путь??? Куда он ей передается и передается ли вообще? я и справки толком не нахожу или я слепой?
       
      imgfile.Text:=TakePhotoFromLibraryAction1.????  
    • От notricky
      На Android код, который работает исправно на Win  вызывает ошибку "CalledFromWrongThreadException: Only the original thread that created a view hierarcy can touch its views" 
      Смысл таков, что я пытаюсь показать форму из треда, у которой BorderStyle=none (роли это не играет).
      Решение в Андроиде заключается в том, чтобы пускать через  runOnUiThread  (то есть выполнять интерфейсные штуки в главном потоке). Как я понимаю, в firemonkey эту фичу должен выполнять Synchronize().
      Тем не менее, ошибка возникает.
      А при запуске в режиме дебага на андроид девайсе событие кнопки вообще не срабатывает иногда. А если срабатывает, то возникает описанное выше исключение.
      Я собрал тестовый пример и в нем не сразу видна ошибка, тогда как получил я ее на рабочем проекте.
      Цель: показать бизибокс на время бекграундных действий. Этот бизибокс у меня сначала был просто на каждой форме и я интерфейсно его вызывал, но теперь решил сделать отедльной формой (как и тоаст), но почему так происходит я не понял. Вы что скажете?
       
      unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Controls.Presentation, FMX.StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; TWorkThread = class(TThread) public procedure Execute; override; end; var Form1: TForm1; implementation {$R *.fmx} uses unit2; procedure TForm1.Button1Click(Sender: TObject); var t: TWorkThread; begin t := TWorkThread.Create(True); t.FreeOnTerminate := true; t.Start; end; { TWorkThread } procedure TWorkThread.Execute; begin inherited; Self.Synchronize(procedure begin Form2.Show; Form2.Top := Form1.Top; Form2.Left := Form1.Left; Form2.BringToFront; end); Terminate; end; end.  
    • От notricky
      Почему-то не возможно использовать константы цветов, заданные в TAlphaColorRec, TColorRec.
      Они есть, но при присвоении, например, TextSettings.Font.Color = TColorRec.cRed или TAlphaColorRec.Red ничего не происходит. Нужно явно задавать $FFFF0000.
      Если так у кого-то ещё, напишите.
      А если что-то можно с этим сделать - тоже
    • От notricky
      Почему-то код, исправно работающий для WIN, не работает на ANDROID.
      procedure AssignEventToComponent(C: TComponent; MethodName: String; const Evt: TNotifyEvent; OnlyIfNil: boolean = true); var M: TMethod; begin M := GetMethodProp(C,MethodName); if not OnlyIfNil or (M.Code = nil) then begin TNotifyEvent(M) := Evt; SetMethodProp(C,MethodName,M); end; end; Есть какие-то особенности работы TMethod для ANDROID?
    • От Рагим
      Доброго времени суток. Имеется старый проект написанный на VCL. Хочу его перевести на FMX и столкнулся с тем, что не могу воспроизвести SWF. Компоненты Flash установлены и видны под VCL, а под FMX нет.
    • От Евгений Корепов
      Возникла задача поиска (фильтрации) в ListView по нескольким критериям. К примеру нужно искать по Item.Text, Item.Detail и Item.Date['Category']. Пошел путем, ранее подсказанным на этом форуме - правкой "function TListViewItems.ApplyFilter: Boolean" в FMX.ListView.pas. Передавать строку поиска хотел в строке типа "Text=Пеньки&Detail=по три рубля&Category=Осиновые", но быстро понял что код превращается в одноразовую кашу, а хотелось сделать красиво и на будущее.
      Сделал так - добавил еще один тип "TFilterPredicateEx = TPredicate<TListViewItem>;", к существующему "TFilterPredicate = TPredicate<string>;" в TListViewItems. Ну и далее по списку добавил аналоги к переменным, функциям и property.
      Смысл в том чтобы вместо обычного бутылочного горлышка в фильтации:
      ListView.Items.Filter:= function(X: string): Boolean begin Result := AFilterText.IsEmpty or X.ToLower.Contains(AFilterText.ToLower); end; иметь мощный инструмент с доступом ко всем плюшкам TListViewItem. Теперь это выглядит вот так:
      type TListViewFilterEx = record Category : String; Name : String; end; ... Var AFilter : TListViewFilterEx; // это для удобства хранения фильтров в одном месте ... AFilter.Category:='Береза'; AFilter.Name:='Пеньки'; AListView.Items.FilterEx:= function(X: TListViewItem): Boolean begin Result:= (AFilter.Category.IsEmpty or X.Data['Category'].AsString.ToLower.Contains(AFilter.Category.ToLower)) And ((AFilter.Name.IsEmpty or X.Text.ToLower.Contains(AFilter.Name.ToLower)) or (AFilter.Name.IsEmpty or X.Detail.ToLower.Contains(AFilter.Name.ToLower))); end; Подозреваю что все это можно было сделать с помощью хелперов, но до их освоения руки никак не дойдут. Если кто то сделает хелпер, дабы не править FMX.ListView.pas, буду очень благодарен.
      Внимание! FMX.ListView.pas от Delphi XE8, к другим версиям думаю не подойдет.
      Прилагаю дополненный FMX.ListView.pas к сообщению.
      FMX.ListViewWithFilterEx.zip
    • От Евгений Корепов
      При публикации нового приложения я обнаружил исчезновение Google Cloud Messaging из консоли разработчика, теперь вместо него Firebase Cloud Messaging. 
      Как я понимаю возможность push сообщений для Delphi закончилась? Или как то можно прикрутить FCM к проекту на Delphi?
    • От uuxyyz
      Коллеги, добрый день. Отписался сегодня по выходу XE8, но решили таки продолжить мытарства. Вопрос, кто нибудь может подсказать, как собрать 64 битное IOS приложение? Сегодня установили XE8, линковщик требует libsqlite3.a и все. 
    • От Рагим
      Доброго времени суток.
       
      Есть приложение которое на некоторые действия пользователей отвечает звонком. Приложение живет со времени Delphi 7. Для воспроизведения звука использую такую процедуру:
       
      Procedure Tform1.PlayRing; var s:string; begin  s := 'ringin.wav';  if FileExists(s) then   begin   form1.MediaPlayer1.Stop;   form1.MediaPlayer1.Clear;   form1.MediaPlayer1.FileName:=s;   form1.MediaPlayer1.Play;   end   else showmessage('Error 104: File not found: '+s);     end;   Звук воспроизводится нормально 50-60 раз. Потом либо выскакивает ошибка: Unsupported media file ringin.wav, либо приложение подвисает. Проблема появилась после перехода с VCL на FMX.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу