动态克隆 android activity?
Cloning an android activity dynamically?
我正在创建一个具有相当动态 UI 的应用程序,允许用户动态地 add/change 其视图和布局的位置。如果用户认为当前的 UI 设计令他满意,他将能够将 activity 的所有视图 (buttons/labels/switches/etc.
) 保存到 "saved" 活动的列表中。是否有可能克隆 activity 或至少保存所有视图和布局的位置?我看到视图具有功能 .getX()
和 .getY()
但据我了解它仅在布局中。
我会创建一个 base-activity,它具有您的两个 Activity 都需要的功能。此功能必须稍微抽象一下,以便两个活动都可以通过扩展此 BaseActivity 来使用此功能并将其用于各自的目的。
如果您 post 一些代码(您的两个活动都应该有的代码部分),我可以更新我的答案以向您展示在您的情况下会是什么样子。
进一步,
第 1 步:在 Android Studio 中打开旧项目。
第 2 步:在 Android Studio 中打开新项目,选择在新的 window 中打开它(而不是第 1 步中的 window)。
第 3 步:将 Java class 文件从旧项目拖放到新项目中。
第 4 步:将那些 Java classes 使用的资源从旧项目拖放到新项目中。
第 5 步:从旧项目的清单中找到元素并将它们复制到新项目清单中的相同基本位置。
更新
我找到了一个有效的解决方案。我创建了一个简单的 Sqlite 数据库,将我所有视图的 XY locations/names/text/id 动态存储到 table 中,然后将它们显示在 'saved' 配置列表中。困难的部分是在获得数据库后再次动态创建所有视图。如果有要求,我也可以放一些代码。
我正在创建一个具有相当动态 UI 的应用程序,允许用户动态地 add/change 其视图和布局的位置。如果用户认为当前的 UI 设计令他满意,他将能够将 activity 的所有视图 (buttons/labels/switches/etc.
) 保存到 "saved" 活动的列表中。是否有可能克隆 activity 或至少保存所有视图和布局的位置?我看到视图具有功能 .getX()
和 .getY()
但据我了解它仅在布局中。
我会创建一个 base-activity,它具有您的两个 Activity 都需要的功能。此功能必须稍微抽象一下,以便两个活动都可以通过扩展此 BaseActivity 来使用此功能并将其用于各自的目的。
如果您 post 一些代码(您的两个活动都应该有的代码部分),我可以更新我的答案以向您展示在您的情况下会是什么样子。
进一步,
第 1 步:在 Android Studio 中打开旧项目。
第 2 步:在 Android Studio 中打开新项目,选择在新的 window 中打开它(而不是第 1 步中的 window)。
第 3 步:将 Java class 文件从旧项目拖放到新项目中。
第 4 步:将那些 Java classes 使用的资源从旧项目拖放到新项目中。
第 5 步:从旧项目的清单中找到元素并将它们复制到新项目清单中的相同基本位置。
更新
我找到了一个有效的解决方案。我创建了一个简单的 Sqlite 数据库,将我所有视图的 XY locations/names/text/id 动态存储到 table 中,然后将它们显示在 'saved' 配置列表中。困难的部分是在获得数据库后再次动态创建所有视图。如果有要求,我也可以放一些代码。