自定义样式在移动FireMonkey



使用:Appmethod 1.14

我需要设计一个自定义样式的应用程序。在表单上放置一个TStyleBook并双击它打开样式设计器,但它是空的,所以我需要加载一个*。FSF或*。Appmethod/RAD Studio附带的样式文件。我想做一个基于标准Android和iOS设计的设计(那些在IDE中使用,如果没有自定义的风格应用),但我在哪里找到的风格文件?我的问题是:有一个"AndroidLight"。Fsf"文件,看起来完全像默认的(硬编码?)Android的IDE设计。我可以修改它,它在安卓上也能运行。这很好。但是我不能在iOS上使用相同的样式(我需要在Android和iOS上使用一个单一的样式),因为应用程序只是冻结(如果我使用TStyleBook)或显示我一个错误,样式不能从资源加载(如果我将其添加为资源并从那里加载):

procedure TUserDataForm.FormCreate(Sender: TObject);
var
  Style: TFMXObject;
begin
  MainScroll := VertScrollBox1;
  {$IFDEF Android}
    // works
    Style := TStyleManager.LoadFromResource(HInstance, 'DSRAndroidIOS', RT_RCDATA);
  {$ENDIF}
  {$IFDEF iOS}
    // Can't load same style file
    Style := TStyleManager.LoadFromResource(HInstance, 'DSRAndroidIOS', RT_RCDATA);
  {$ENDIF}
  if Style <> nil then
    TStyleManager.SetStyle(Style);
end;

我找不到其他的*。样式或*。Appmethod/RAD Studio附带的fsf文件,看起来像IDE中的标准iOS 7设计。我可以尝试开始在Style Designed中添加自己的样式部分,但是我如何知道使用哪些名称以及样式层次结构是如何构建的呢?有什么概述吗?

我在文件夹"C:Program files (x86)EmbarcaderoStudio14.0binios"中发现6个没有文件扩展名的文件。它们似乎是二进制样式文件(用十六进制编辑器打开),但我无法在StyleDesiger中加载它们,错误:"读取TSubImage.SourceRect.LeftI: Property SourceRect错误。"LeftI不存在"(或类似-从德语翻译过来)。

编辑:好的,我现在有样式了。我自己从一个编译的移动FireMonkey项目中提取了它们,以iOS为目标平台。使用十六进制编辑器。但我想知道如果样式存储在其他地方可能吗?

您可以通过与Delphi捆绑的位图样式设计器获得原始样式。您可以在IDE的Tools菜单上找到链接。

打开后,单击文件打开图标旁边的下拉菜单。您将看到列出的可用样式。点击其中一个打开,然后选择文件|另存为,选择另存为类型:FireMonkey Style。

相关内容

  • 没有找到相关文章

最新更新