【问题标题】:How to prevent screen rotation with android development in delphi xe5 Firemonkey如何在delphi xe5 Firemonkey中使用android开发防止屏幕旋转
【发布时间】:2014-08-25 14:43:19
【问题描述】:

我找到了以下代码来防止屏幕旋转,但是当我编译时,我得到了一堆未声明的标识符:IFMXScreenService, TPlatformServices。 显然这是因为缺少单位。但我找不到它是什么单位。

代码:

procedure TLogin.FormCreate(Sender: TObject);
var
  ScreenService: IFMXScreenService;
  OrientSet: TScreenOrientations;
begin
  if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService) then
  begin
    ScreenService := TPlatformServices.Current.GetPlatformService
      (IFMXScreenService) as IFMXScreenService;
    OrientSet := [TScreenOrientation.soLandscape];
    ScreenService.SetScreenOrientation(OrientSet);
  end;
end;

任何帮助都将非常感谢。

更新:

缺少的单位是FMX.Platform。但是当我现在尝试编译时,我得到一个错误:\\android\\debug\\libproject.so: open: permission denied

【问题讨论】:

    标签: android delphi


    【解决方案1】:

    FMX.Platform 添加到您的uses 子句中,并去掉对GetPlatformService() 的冗余调用:

    uses
      ..., FMX.Platform;
    
    procedure TLogin.FormCreate(Sender: TObject);
    var
      ScreenService: IFMXScreenService;
      OrientSet: TScreenOrientations;
    begin
      if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService, IInterface(ScreenService)) then
      begin
        OrientSet := [TScreenOrientation.soLandscape];
        ScreenService.SetScreenOrientation(OrientSet);
      end;
    end;
    

    【讨论】:

      【解决方案2】:

      转到项目选项 -> 应用程序 -> 方向

      检查自定义方向并检查横向选项之一。

      【讨论】:

        【解决方案3】:

        这在 Delphi 10.4 及更高版本中发生了变化...

        if TPlatformServices.Current.SupportsPlatformService(IFMXScreenService, IInterface(ScreenService)) then
        begin
          OrientSet := [TScreenOrientation.soPortrait];
          ScreenService.SetSupportedScreenOrientations(OrientSet) // WAS .SetScreenOrientation(OrientSet);
        end;
        

        【讨论】:

          猜你喜欢
          • 2014-01-18
          • 2011-02-13
          • 2016-01-28
          • 1970-01-01
          • 2013-01-08
          • 1970-01-01
          • 1970-01-01
          • 2011-11-25
          相关资源
          最近更新 更多