我正在设计自己的选项卡控件。我创建了 2 个自定义视图。第一个被称为MyTab
并派生自LinearLayout
。第二个被称为MyTabBar
并派生自LinearLayout
。
两者的构造函数看起来像这样:
public MyTab(Context context, AttributeSet attrs) {
super(context, attrs);
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater.inflate(R.layout.layout_my_tab, this);
}
MyTabBar
有一个成员变量,它是ArrayList
s的一个MyTab
。我有一个公共函数调用addTab(String strTabName)
来添加一个新MyTab
的MyTabBar
. 我的问题是,当我执行以下操作时:
MyTab tab = new MyTab(...);
在里面MyTabBar
,我如何获得Context
和AttributeSet
需要传递给MyTab
?
或者我应该以某种方式膨胀它?