package
com.example.expandablelistview;
import
android.app.Activity;
import
android.os.Bundle;
import
android.view.Menu;
import
android.view.MenuItem;
import
android.view.View;
import
android.view.ViewGroup;
import
android.widget.BaseExpandableListAdapter;
import
android.widget.ExpandableListView;
import
android.widget.ImageView;
import
android.widget.TextView;
public
class
MainActivity
extends
Activity {
private
ExpandableListView expandableListView;
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
expandableListView=(ExpandableListView) findViewById(R.id.ExpandableListView1_1);
expandableListView.setAdapter(
new
MyExpandableListAdapter());
}
@Override
public
boolean
onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return
true
;
}
@Override
public
boolean
onOptionsItemSelected(MenuItem item) {
int
id = item.getItemId();
if
(id == R.id.action_settings) {
return
true
;
}
return
super
.onOptionsItemSelected(item);
}
class
MyExpandableListAdapter
extends
BaseExpandableListAdapter{
private
String[] skills =
new
String[]{
"WORD"
,
"EXCEL"
,
"EMAIL"
,
"PPT"
};
private
String[][] groups =
new
String[][]{
{
"文档编辑"
,
"文档排版"
,
"文档处理"
,
"文档打印"
},
{
"表格编辑"
,
"表格排版"
,
"表格处理"
,
"表格打印"
},
{
"收发邮件"
,
"管理邮箱"
,
"登录登出"
,
"注册绑定"
},
{
"演示编辑"
,
"演示排版"
,
"演示处理"
,
"演示打印"
},
};
@Override
public
int
getGroupCount() {
return
skills.length;
}
@Override
public
int
getChildrenCount(
int
groupPosition) {
return
groups[groupPosition].length;
}
@Override
public
Object getGroup(
int
groupPosition) {
return
skills[groupPosition];
}
@Override
public
Object getChild(
int
groupPosition,
int
childPosition) {
return
groups[groupPosition][childPosition];
}
@Override
public
long
getGroupId(
int
groupPosition) {
return
groupPosition;
}
@Override
public
long
getChildId(
int
groupPosition,
int
childPosition) {
return
childPosition;
}
@Override
public
boolean
hasStableIds() {
return
true
;
}
@Override
public
View getGroupView(
int
groupPosition,
boolean
isExpanded,
View convertView, ViewGroup parent) {
if
(convertView==
null
){
convertView=getLayoutInflater().inflate(R.layout.group_item,
null
);
}
ImageView imageView=(ImageView) convertView.findViewById(R.id.imageViewgroup_1);
TextView textView=(TextView) convertView.findViewById(R.id.textViewgroup_1);
imageView.setImageResource(R.drawable.ic_launcher);
textView.setText(skills[groupPosition]);
return
convertView;
}
@Override
public
View getChildView(
int
groupPosition,
int
childPosition,
boolean
isLastChild, View convertView, ViewGroup parent) {
if
(convertView==
null
){
convertView=getLayoutInflater().inflate(R.layout.child_item,
null
);
ImageView imageView=(ImageView) convertView.findViewById(R.id.imageViewchild_1);
TextView textView=(TextView) convertView.findViewById(R.id.textViewchild_1);
imageView.setImageResource(R.drawable.ic_launcher);
textView.setText(groups[groupPosition][childPosition]);
}
return
convertView;
}
@Override
public
boolean
isChildSelectable(
int
groupPosition,
int
childPosition) {
return
true
;
}
}
}