嘿!SherlockListFragment中的ExpandableListView使用扩展BaseExpandableListAdapter的自定义适配器
我有这个设置。
MainActivity - 延伸SherlockFragmentActivity - 显示4个片段使用TabsAdapter
我有那些我需要这个选项卡之一的问题:
FragmentSkills - 延伸SherlockListFragment - 显示的一些的ExpandableListView现在硬编码测试字符串
========================================= ========================================= 问题: 我正在此时一个NullPointerException,我似乎无法旋转:
//我onActivityCreated()在FragmentSkills.java expandList =(ExpandableListView)getActivity()findViewById(R.id.ExpList内。 );
============================================== ====================================
我有点卡在这里,我不'不知道还有什么可以尝试的。我在类似的东西上找到了很多例子,但他们都只是展示了如何在正常的活动中做到这一点。由于我缺乏经验,这可能是我看不到的一些小东西,所以请看看并尝试帮我解决这个问题。
我是Android新手,请耐心等待。任何帮助表示赞赏。提前谢谢了。这是相关的代码。让我知道你是否需要看更多。 非常感谢!
。
fragment_skills.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ExpandableListView android:id="@+id/ExpList"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:groupIndicator="@null" />
</LinearLayout>
list_item_skill_groups.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView android:id="@+id/tvSkillGroup"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginRight="15dp"
android:textColor="@color/black"
android:textIsSelectable="false"
android:textSize="17sp" />
</LinearLayout>
list_item_skills.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingTop="10dp"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingBottom="10dp"
android:orientation="vertical" >
<TextView android:id="@+id/tvSkillTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textIsSelectable="false"
android:textSize="19sp"
android:textStyle="normal"
android:paddingBottom="4dp" />
</LinearLayout>
FragmentSkills.java
public class FragmentSkills extends SherlockListFragment {
private ExpandableListView expandList;
private ArrayList<ExpandableSkillsGroup> expListItems;
private SkillsAdapter skillsAdapter;
ArrayList<ExpandableSkillsChild> list1;
ArrayList<ExpandableSkillsChild> list2;
ArrayList<ExpandableSkillsChild> list3;
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
expandList = (ExpandableListView) getActivity().findViewById(R.id.ExpList);
expListItems = getListItems();
skillsAdapter = new SkillsAdapter(getActivity(), expListItems);
expandList.setAdapter(skillsAdapter);
}
private ArrayList<ExpandableSkillsGroup> getListItems() {
list1 = new ArrayList<ExpandableSkillsChild>();
list1.add(new ExpandableSkillsChild("Android", null));
list1.add(new ExpandableSkillsChild("Java", null));
list1.add(new ExpandableSkillsChild("Javascript", null));
ExpandableSkillsGroup group1 = new ExpandableSkillsGroup("Software Development");
group1.setItems(list1);
list2 = new ArrayList<ExpandableSkillsChild>();
list2.add(new ExpandableSkillsChild("MySQL", null));
list2.add(new ExpandableSkillsChild("PostgreSQL", null));
list2.add(new ExpandableSkillsChild("SQLite", null));
ExpandableSkillsGroup group2 = new ExpandableSkillsGroup("Databases");
group2.setItems(list2);
list3 = new ArrayList<ExpandableSkillsChild>();
list3.add(new ExpandableSkillsChild("MySQL", null));
list3.add(new ExpandableSkillsChild("PostgreSQL", null));
list3.add(new ExpandableSkillsChild("SQLite", null));
ExpandableSkillsGroup group3 = new ExpandableSkillsGroup("Operating Systems");
group3.setItems(list3);
ArrayList<ExpandableSkillsGroup> groupList = new ArrayList<ExpandableSkillsGroup>();
groupList.add(group1);
groupList.add(group2);
groupList.add(group3);
return groupList;
}
}
真棒:现在您的
FragmentSkills
添加此方法!非常感谢!我知道这只是一些小事。非常感谢您的帮助! – noneofthem 2013-02-21 20:13:17