我有一个复杂的片段视图组,它是时不时创建的。
一次只能显示一个实例片段。
我想知道是否有可能以某种方式存储膨胀的视图,并在重新创建片段时重用它。
显然,视图属性必须更改,但至少视图不需要再次膨胀。
我只是尝试将view元素存储为静态元素,然后检查它是否存在,如果存在,则使用它。
但是,我相信view元素有一些特定于片段的属性,如果将它与具有不同引用id的片段一起使用,它将失败-好吧..它失败了。
有人试图缓存膨胀的视图并重用它们吗?
最佳答案
在不同的片段中重用视图似乎非常危险(尽管在同一个片段中重用视图是安全的)。
如果上下文发生更改(例如,如果重新创建活动),该怎么办?我想您必须希望没有视图调用getContext()
并尝试使用活动上下文,因为它将无效并可能导致意外的结果。
你可以做的是确保你优化了你的布局(比如避免嵌套的权重和RelativeLayouts
如果可能的话)或者使用自定义视图来简化你的布局。
关于java - 在Android上回收膨胀 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18596928/