我正在编写一个从 Android 库扩展 LinearLayout 的类。在类构造函数中,我使用了仅在 SDK 11 中引入的 LinearyLayout 构造函数 LinearLayout(Context context,AttributeSet attrs, int defStyles)。问题是我试图让应用程序在运行 SDK 10 的 Android 2.3.3 上运行。我有尝试引入类似于此的检查:
public SView(Context context, AttributeSet attrs, int defStyle) {
if (android.os.Build.VERSION.SDK_INT <= 10) {
super(context, attrs, defStyle);
} else {
super(context, attrs, defStyle);
}
setupView(context);
}
但是问题仍然存在,因为super必须在第一行。另一个问题是 defStyle 提供的功能没有被替代。
我应该怎么做才能解决这个问题?