溫馨提示×

ExpandableListView分組標(biāo)題如何設(shè)置

小樊
82
2024-09-04 07:36:36
欄目: 編程語言

在Android中,要設(shè)置ExpandableListView的分組標(biāo)題,需要使用BaseExpandableListAdapter。下面是一個(gè)簡單的示例來說明如何設(shè)置分組標(biāo)題:

  1. 首先,創(chuàng)建一個(gè)ExpandableListView的適配器,繼承自BaseExpandableListAdapter。
public class MyExpandableListAdapter extends BaseExpandableListAdapter {
    // ...
}
  1. 實(shí)現(xiàn)適配器中的方法,特別是getGroupView()方法,該方法用于設(shè)置分組標(biāo)題的視圖。
@Override
public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
    // 獲取分組標(biāo)題
    String headerTitle = (String) getGroup(groupPosition);
    if (convertView == null) {
        LayoutInflater inflater = (LayoutInflater) this.context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = inflater.inflate(R.layout.list_group, null);
    }

    TextView listHeader = (TextView) convertView.findViewById(R.id.list_header);
    listHeader.setTypeface(null, Typeface.BOLD);
    listHeader.setText(headerTitle);

    return convertView;
}
  1. getGroup()方法中返回分組標(biāo)題的數(shù)據(jù)。
@Override
public Object getGroup(int groupPosition) {
    return headers[groupPosition];
}
  1. 在你的Activity或Fragment中,初始化ExpandableListView并設(shè)置適配器。
ExpandableListView expandableListView = findViewById(R.id.expandableListView);
MyExpandableListAdapter adapter = new MyExpandableListAdapter(this, headerData, childData);
expandableListView.setAdapter(adapter);

這樣,你就可以在ExpandableListView中設(shè)置分組標(biāo)題了。注意,你需要根據(jù)實(shí)際情況修改代碼,例如使用自定義的布局文件和數(shù)據(jù)源。

0