代码之家  ›  专栏  ›  技术社区  ›  Michael Kessler

应用程序中的浮动视图

  •  0
  • Michael Kessler  · 技术社区  · 6 年前

    我正在尝试实现一个浮动的可拖动视图,该视图将显示在单个应用程序的所有活动中。
    这意味着将有一个30%的高度和50%的屏幕宽度的视图,用户将能够在屏幕上拖动,并将其绘制在应用程序中任何活动的上方。当用户将切换到同一应用程序中的另一个活动时,浮动视图应保持在同一位置。

    我知道可以用 SYSTEM_ALERT_WINDOW 权限,我想避免,因为此视图只需要在应用程序中显示,我不希望要求用户批准此类权限。

    另一个要点是:
    这个视图将成为SDK的一部分。
    这意味着我不负责应用程序的活动/片段/布局。
    我可以假设:

    • 宿主应用程序将子类化的基础应用程序
    • 所有根布局都有一些标识符,并且是某种特定类型的(例如,所有根布局都是 RelativeLayout 有身份证 root_layout )

    4-6年前提出的类似问题,0个令人满意的答案:

    1 回复  |  直到 6 年前
        1
  •  0
  •   Eyal Israel    6 年前

    我可以建议您使用在后台运行的服务来保存特定的视图。在用户选择禁用或手动关闭特定视图之前,使用服务将满足您的需要。您需要使用作为IntentService的异步服务,这样它不会影响您的ui主线程(不要忘记activity的生命周期和层次结构)。

    请看下面的链接。 1-谷歌开发者链接 https://developer.android.com/training/run-background-service/create-service

    2-链接到此类实现的示例 https://medium.com/exploring-code/create-chat-heads-like-facebook-messenger-32f7f1a62064