跨不同活动保存和加载布局



我正在创建一个具有以下功能的应用程序。Main活动是一个包含三个fragments的Tabbed活动。中间的CCD_ 2由一个CCD_。当你选择listView项目时,它将允许你做两件事之一:

  1. 编辑布局,可以添加按钮、开关、文本框等
  2. 如果创建了布局,您可以滑动到第一个选项卡,在该选项卡上,布局将加载用户添加的所有自定义视图

我想知道如何保存每个ViewGroup,以便用户可以随意访问和编辑它们。我不认为SavedStated可以做到这一点,因为它将跨越不同的活动,这就是为什么我需要一种保存/加载它们的方法。

我有一个片段可以让你自定义布局。我只想和所有的孩子一起保存ViewGroup。因此,您将拥有1个XML布局,而不是10个不同的XML布局,其中包含10个不同ViewGroup,这些ViewGroup可以在选择不同的ListView项目时动态插入。

它不能是布局的图像,当我切换到视图时,我需要具有所有按钮和开关的功能,并且用户需要能够在他们愿意的时候编辑他们的布局。

我认为您需要为所有View创建模型。例如ModelButton-您的按钮型号可能有下一个代码:

public class ModelButton implements Serializable{
private String text;
private Bitmap bgResource;
private int width;
private int height
public ModelButton(final String text, final Bitmap bgResource, final int width, final int height) {
this.text = text;
this.bgResource = bgResource;
this.width = width;
this.height = height;
}
}

您的所有模型都必须实现Serializable接口,才能将其传递到Intent中。此外,您还需要想出存储视图的宽度和高度的方法。

这不是一个简单的方法,但正如我所知,在活动之间没有传递ViewGroup或View的方法