在FireMonkey Android应用程序中获取活动表单



我被困住了。如何在FireMonkey Android应用程序中获取活动表单?我只在这个表单上放置了一个TComponent,但它似乎不包含对根元素的引用。

我动态创建一个控件(TToolBar),并希望在组件放置在其上时将其添加到活动窗体的顶部。问题是:

  ToolBar := TToolBar.Create(Application);
  ToolBar.Align := TAlignLayout.alTop;
  ToolBar.Parent := ?;  // I don't know what parent to specify for this control

也许我应该实例化一个新窗体并将控件放在上面?

  1. 正确的解决方案:

    工具栏.父 := 应用程序.主窗体;
    (文档)
  2. 这将起作用,但您将无法将子项添加到ToolBar

    如果应用程序.有父级则
    ToolBar.Parent := Application.GetParentComponent as TFmxObject;
    (文档)
  3. 如果您知道FormFamily,此内部函数也应该可以解决问题:

    function Application.GetDeviceForm(const FormFamily: string): TCommonCustomForm; overload;

最新更新