我有一个任务是制作交互式教程,而我一直在苦苦挣扎数周。

什么是迭代教程?这是UI元素的分步说明,出现在屏幕上并应突出显示,以便用户更好地了解我正在使用的应用程序。

以下是这些“弹出窗口”的一些示例:
android - Android互动式教学-LMLPHP
背景为灰色,元素应具有边框。

我确实知道有一些库可以制作这种“蒙版”,尽管它们都缺少支持幻灯片的自定义视图,因此缺少这些库。根本不适合我:c

我选择的方法是愚蠢的:为每个单独的弹出窗口重新创建布局,形成背景的布局(例如将元素复制到新视图上)并将其显示为自定义DialogFragment,将新元素的位置设置为与“目标”(元素的位置,我希望在其上面复制)的位置。这是一个不好的方法:无法保证在不同的屏幕尺寸下元素不会混乱。

在某些时候,我的方法太复杂了。现在,我想知道:是否有任何方法可以通过掩膜实现相同的目的?例如。我创建了一个不透明度为70%的新DialogFragment,然后在要突出显示的元素的位置动态创建一个清晰的位置?

有什么方法可以掩盖一个位置的布局吗?本教程幻灯片之间所有交互的逻辑已经完成,因此,唯一的问题是如何创建这种遮罩(如果在Android中可行)。

最佳答案

在这里找到最适合您的解决方案:


  https://github.com/fredericojssilva/ShowTipsView

10-08 17:36