迫击炮视图继承自不同的布局(LinearLayout,RelativeLayout等)。
我希望有一些基本功能可以在所有视图中共享。
问题是我不能使用继承,因为从不同的布局继承了视图。
你通常如何解决这个问题?
答案 0 :(得分:0)
我有一个派生自FrameLayout的特殊类,它作为查看通货膨胀的代理。它具有自定义属性:layoutResId,layoutPhoneResId,layoutTabletResId,layoutEmptyResId,layoutLoadingResId。这些是对其他资源的引用(可以是任何布局)。在LayoutDirector膨胀之后(在onFinishInflate()中),这些布局视图会膨胀并作为子视图添加到此视图中。此方法允许为平板电脑和手机(通过特殊条件),自定义空白和加载视图提供不同的视图。这也允许在所有视图中共享功能。