2016-05-23 67 views
0

请参阅this link,我尝试为多个布局创建1个活动,但是如何在我的活动中执行if else条件时遇到问题。如何为每个ExpandableListView子项目执行多个不同的布局,每个ExpandableListView子项目单击时

这是我的代码片段:

TabRouting.java

public class TabRouting extends Fragment { 

    ................. 

     @Override 
     public boolean onChildClick(ExpandableListView parent, View v, 
            int groupPosition, int childPosition, long id) { 
      if (groupPosition == 0){ 
       if (childPosition == 0){ 
        Intent a = new Intent(getActivity(), Content.class); 
        startActivity(a); 
       } 
       if (childPosition == 1){ 
        Intent a = new Intent(getActivity(), Content.class); 
        startActivity(a); 
       } 
       if (childPosition == 2){ 
        Intent a = new Intent(getActivity(), Content.class); 
        startActivity(a); 
       } 
       if (childPosition == 3){ 
        Intent a = new Intent(getActivity(), Content.class); 
        startActivity(a); 
       } 
      } 
      ................ 

      return false; 
     } 
    }); 

    ............... 

    return v; 

} 

我想使1个活动(Content.java)有很多的布局,所以我每次点击ExpandableListView的每个子项都可以看到不同的布局。

谢谢:)

回答

0

尝试下面的代码,

@Override 
public boolean onChildClick(ExpandableListView parent, View v, int groupPosition, 
     int childPosition, long id) { 
    Intent a = new Intent(getActivity(), Content.class); 
    a.putExtra("position",childPosition); 
    startActivity(a); 

    ................ 

    return false; 
} 

在这里,您可以通过位置,内容类和基于childPosition可以膨胀不同的布局。

public class Content extends AppCompatActivity { 

    @Override 
    public void onCreate(Bundle bundle) { 
     Intent intent = getIntent(); 
     int childposition = intent.getIntExtra("position",-1); 
     switch(childposition) { 
      case 0: 
       setContentView(R.layout.layoutzero); 
       break; 
      case 1: 
       setContentView(R.layout.layoutone); 
       break; 
      ........ 
     } 
    } 
} 
+0

我在使用'putInt'语句时出错,所以用'putExtra'代替它,但是我的Content.java错误导致Intent无法应用于String。 – ardhiart

+0

@ardhiart:我编辑了我的答案。你现在可以检查它。 –

+0

对于1组列表有帮助,但如果我想添加更多的组列表,如何'回合'groupPosition'? – ardhiart

相关问题