Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 可展开列表视图子项单击新建活动 我为可扩展列表视图编写了代码。它正常工作。但我想,当我点击每个孩子时,它将打开一个新的活动。你能帮帮我吗。我将非常感谢你的帮助。_Android_Expandablelistview_Expandablelistadapter - Fatal编程技术网

Android 可展开列表视图子项单击新建活动 我为可扩展列表视图编写了代码。它正常工作。但我想,当我点击每个孩子时,它将打开一个新的活动。你能帮帮我吗。我将非常感谢你的帮助。

Android 可展开列表视图子项单击新建活动 我为可扩展列表视图编写了代码。它正常工作。但我想,当我点击每个孩子时,它将打开一个新的活动。你能帮帮我吗。我将非常感谢你的帮助。,android,expandablelistview,expandablelistadapter,Android,Expandablelistview,Expandablelistadapter,coursedapter.java 公共类CourseApter扩展了BaseExpandableListAdapter{ 私有上下文ctx; 私有HashMap主题\u类别; 私人名单介绍(u名单),; 公共课程指南(上下文ctx、HashMap主题\类别、列表介绍\列表){ 这个.ctx=ctx; this.Topics\u Category=主题\u Category; this.Introduction\u List=Introduction\u List; } @凌驾 public i

coursedapter.java

公共类CourseApter扩展了BaseExpandableListAdapter{
私有上下文ctx;
私有HashMap主题\u类别;
私人名单介绍(u名单),;
公共课程指南(上下文ctx、HashMap主题\类别、列表介绍\列表){
这个.ctx=ctx;
this.Topics\u Category=主题\u Category;
this.Introduction\u List=Introduction\u List;
}
@凌驾
public int getGroupCount(){
返回简介_List.size();
}
@凌驾
公共整数getChildrenCount(整数i){
返回主题_Category.get(简介_List.get(i)).size();
}
@凌驾
公共对象getGroup(inti){
返回介绍列表。获取(i);
}
@凌驾
公共对象getChild(int父对象,int子对象){
返回主题\u Category.get(简介\u List.get(父级)).get(子级);
}
@凌驾
公共长getGroupId(inti){
返回i;
}
@凌驾
公共长getChildId(int父级,int子级){
返回儿童;
}
@凌驾
公共布尔表ID(){
返回false;
}
@凌驾
公共视图getGroupView(int父视图、布尔isExpanded、视图转换视图、视图组父视图){
字符串组\标题=(字符串)getGroup(父级);
if(convertView==null)
{
LayoutInflater充气器=(LayoutInflater)ctx.getSystemService(Context.LAYOUT\u充气器\u服务);
convertView=充气机。充气(R.layout.activity\u parent\u list\u view\u layout,parentview,false);
}
TextView parent\u TextView=convertView.findViewById(R.id.parent\u txt);
parent_textview.setTypeface(null,Typeface.BOLD);
parent_textview.setText(组标题);
返回视图;
}
@凌驾
公共视图getChildView(int-parent、int-child、boolean-lastChild、视图convertview、视图组parentview){
String child_title=(String)getChild(父,子);
if(convertview==null)
{
LayoutInflater充气器=(LayoutInflater)ctx.getSystemService(Context.LAYOUT\u充气器\u服务);
convertview=充气机。充气(R.layout.activity\u child\u list\u view\u layout,parentview,false);
}
TextView child_TextView=(TextView)convertview.findViewById(R.id.child_txt);
child_textview.setText(child_title);
返回视图;
}
@凌驾
公共布尔值isChildSelectable(int-groupPosition,int-childPosition){
返回true;
}
}
我为可扩展列表视图编写了代码。它正常工作。但我想,当我点击每个孩子时,它将打开一个新的活动。你能帮帮我吗。我将非常感谢你的帮助。 MainListViewActivity.java

public类MainListViewActivity扩展了AppCompatActivity{
HashMap介绍;
列表介绍(u)列表;;
可扩展列表视图扩展列表;
CourseAdapter适配器;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u main\u list\u视图);
Exp\u list=(ExpandableListView)findViewById(R.id.Exp\u list);
简介=DataProvider.getInfo();
Introduction_list=newarraylist(Introduction.keySet());
adapter=new CourseAdapter(此,简介,简介列表);
Exp_list.setAdapter(适配器);
Exp_list.setOnGroupExpandListener(新的ExpandableListView.OnGroupExpandListener(){
@凌驾
public void onGroupExpand(int groupPosition){
Toast.makeText(getBaseContext(),简介_list.get(groupPosition)+“已展开”,Toast.LENGTH_LONG.show();
}
});
Exp_list.setOnGroupCollapseListener(新的ExpandableListView.OnGroupCollapseListener(){
@凌驾
公共void-onGroupCollapse(int-groupPosition){
Toast.makeText(getBaseContext(),简介_list.get(groupPosition)+“已折叠”,Toast.LENGTH_LONG.show();
}
});
Exp_list.setOnChildClickListener(新的ExpandableListView.OnChildClickListener(){
@凌驾
公共布尔onChildClick(ExpandableListView父视图、视图v、int-groupPosition、int-childPosition、长id){
Toast.makeText(getBaseContext(),Introduction.get(Introduction\u list.get(groupPosition)).get(childPosition)+“来自类别”+
简介\u list.get(groupPosition)+“已选中”,Toast.LENGTH\u LONG.show();
返回false;
}
});
}
}

您只需要在setOnChildClickListener方法中传递意图

Exp_list.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
    @Override
    public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {
        Toast.makeText(getBaseContext(), Introduction.get(Introduction_list.get(groupPosition)).get(childPosition)+ " from category "+
                Introduction_list.get(groupPosition)+ " is selected ", Toast.LENGTH_LONG).show();

        Intent intent = new Intent(this, NextActivity.class);
        startActivity(intent);

        return false;
    }
});
    public class MainListViewActivity extends AppCompatActivity {

    HashMap<String, List<String>> Introduction;
    List<String> Introduction_list;
    ExpandableListView Exp_list;
    CourseAdapter adapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main_list_view);

        Exp_list = (ExpandableListView) findViewById(R.id.exp_list);

        Introduction = DataProvider.getInfo();
        Introduction_list = new ArrayList<String>(Introduction.keySet());
        adapter = new CourseAdapter(this, Introduction, Introduction_list);
        Exp_list.setAdapter(adapter);

        Exp_list.setOnGroupExpandListener(new ExpandableListView.OnGroupExpandListener() {
            @Override
            public void onGroupExpand(int groupPosition) {
                Toast.makeText(getBaseContext(), Introduction_list.get(groupPosition)+ " is Expanded", Toast.LENGTH_LONG).show();
            }
        });

        Exp_list.setOnGroupCollapseListener(new ExpandableListView.OnGroupCollapseListener() {
            @Override
            public void onGroupCollapse(int groupPosition) {
                Toast.makeText(getBaseContext(), Introduction_list.get(groupPosition)+ " is Collapsed", Toast.LENGTH_LONG).show();
            }
        });

        Exp_list.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
            @Override
            public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {
                Toast.makeText(getBaseContext(), Introduction.get(Introduction_list.get(groupPosition)).get(childPosition)+ " from category "+
                        Introduction_list.get(groupPosition)+ " is selected ", Toast.LENGTH_LONG).show();

                return false;
            }
        });

    }
}
Exp_list.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
    @Override
    public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, int childPosition, long id) {
        Toast.makeText(getBaseContext(), Introduction.get(Introduction_list.get(groupPosition)).get(childPosition)+ " from category "+
                Introduction_list.get(groupPosition)+ " is selected ", Toast.LENGTH_LONG).show();

        Intent intent = new Intent(this, NextActivity.class);
        startActivity(intent);

        return false;
    }
});