我正在尝试在程序中使用ExpandableListActivity,但我已经在我的类中继承了TabActivity。我不能做多重继承,我需要在我的程序中使用ExpandableListView和Tabs。 我在这里查看了Google的ExpandableListView代码http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/ExpandableList1.html。
但是在这里他们继承了我无法做的ExpandableListActivity,因为我已经在我的班级中继承了TabActivity。
我知道我可以使用ListView而不在我的类中继承ListActivity。我也可以为ExpandableListView类做同样的事情吗?如果是这样,那么任何人都可以提供任何示例代码来使用ExtendableListView而不继承活动吗?
答案 0 :(得分:2)
您可以拥有一个扩展ExpandableListView的自定义视图,并在TabActivity中使用它。
可扩展列表视图
public class CustomExpListView extends ExpandableListView{
/** Your code **/
}
托管标签的主要活动
public class MyTabActivity extends TabActivity{
private TabHost tabhost;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
tabHost = getTabHost();
tabHost.addTab(tabHost
.newTabSpec("Tab 1")
.setIndicator("Tab 1",
this.getResources().getDrawable(
R.drawable.tab_icon))
.setContent(new Intent(this, Tab1.class)));
/** Further code**/
}
}
带有exp列表的选项卡的XML布局文件(选项卡1)
/**Other layout stuff goes here**/
<com.jmango.nexus.view.ProductListView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:groupIndicator="@drawable/group_indicator"
android:childIndicator="@drawable/child_indicator"
android:cacheColorHint="#00000000"
android:divider="#00BBFF"
android:childDivider="@android:drawable/divider_horizontal_dark"
android:smoothScrollbar="true"
android:id="@+id/exp_list_view"/>
带有exp列表的选项卡的类
CustomExpListView custExpListView = (CustomExpListView) this
.findViewById(R.id.exp_list_view);
您还可以扩展侦听器并对其进行自定义。
希望它有所帮助!