Java 单击可展开的ListView父组件不打开子列表
我制作了一个可展开的列表,但当我单击父组件但它没有打开子组件并关闭它时。发生了什么事我不知道。如果有人说我也提供快照。我尝试了很多事情,但什么也没发生。我觉得所有这些都发生在添加滚动视图之前,添加滚动视图这些工作完美。但它不工作检查我的xml文件如果发现任何错误请通知我 My MainActivity.java:-Java 单击可展开的ListView父组件不打开子列表,java,android,expandablelistview,Java,Android,Expandablelistview,我制作了一个可展开的列表,但当我单击父组件但它没有打开子组件并关闭它时。发生了什么事我不知道。如果有人说我也提供快照。我尝试了很多事情,但什么也没发生。我觉得所有这些都发生在添加滚动视图之前,添加滚动视图这些工作完美。但它不工作检查我的xml文件如果发现任何错误请通知我 My MainActivity.java:- ExpandableListAdapter listAdapter; ExpandableListView expListView; List<String> lis
ExpandableListAdapter listAdapter;
ExpandableListView expListView;
List<String> listDataHeader = new ArrayList<String>();
HashMap<String, List<String>> listDataChild = new HashMap<String, List<String>>();;
List<String> innerhref = new ArrayList<>();
// private List<String> firstLevelSubMenus = new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowHomeEnabled(true);
// get the listview
expListView = (ExpandableListView) findViewById(R.id.lvExp);
// preparing list data
// prepareListData();
listAdapter = new ExpandableListAdapter(this, listDataHeader, listDataChild);
// setting list adapter
expListView.setAdapter(listAdapter);
textView = (TextView)findViewById(R.id.discount_and_offers);
view = findViewById(R.id.discount_and_offers_view);
textView1 = (TextView)findViewById(R.id.grad_offer_details);
linearLayout01 = (LinearLayout)findViewById(R.id.linear_layout_inner_image01);
linearLayoutDiscount01 = (LinearLayout)findViewById(R.id.linear_layout_inner_discount_image01);
linearLayoutmens =(LinearLayout)findViewById(R.id.line3);
linearLayoutMens01 = (LinearLayout)findViewById(R.id.linear_layout_inner_mens_image01);
linearLayoutMens02 = (LinearLayout)findViewById(R.id.linear_layout_inner_mens_name01);
linearLayoutMens03 = (LinearLayout)findViewById(R.id.linear_layout_inner_mens_price01);
mDemoSlider = (SliderLayout)findViewById(R.id.slider);
new Menus().execute("http://opencart.codeniques.com/shopping/?route=feed/web_api/menu&key=test123$");
new ImageSlider().execute("http://opencart.codeniques.com/shopping/?route=feed/web_api/slider&key=test123$");
new SpecialProduct().execute("http://opencart.codeniques.com/shopping/?route=feed/web_api/specialproduct&key=test123$");
new DiscountProduct().execute("http://opencart.codeniques.com/shopping/?route=feed/web_api/discountproduct&key=test123$");
new FrontCategories().execute("http://opencart.codeniques.com/shopping/?route=feed/web_api/getfrontcategories&key=test123$");
}
public class Menus extends AsyncTask<String,Void,Void>{
@Override
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected Void doInBackground(String... params) {
try{
HttpClient client = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(params[0]);
HttpResponse response = client.execute(httpPost);
int status = response.getStatusLine().getStatusCode();
if(status==200){
HttpEntity entity = response.getEntity();
String data = EntityUtils.toString(entity);
JSONObject jsonObject = new JSONObject(data);
JSONArray jsonArray = jsonObject.getJSONArray("categories");
for(int i=0;i<jsonArray.length();i++){
JSONObject jsonObject1 = jsonArray.getJSONObject(i);
listDataHeader.add(jsonObject1.getString("name"));
JSONArray jsonArray1 = jsonObject1.getJSONArray("children");
for(int j=0;j<jsonArray1.length();j++){
JSONObject jsonObject2 = jsonArray1.getJSONObject(j);
List<String> innerChild = new ArrayList<>();
innerChild.add(jsonObject2.getString("name"));
innerhref.add(jsonObject2.getString("href"));
listDataChild.put(listDataHeader.get(i),innerChild);
}
}
}
}catch (IOException |JSONException e){
Log.e("Error :",e.getMessage());
}
return null;
}
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
}
}
ExpandableListAdapter-listAdapter;
ExpandableListView解释视图;
List listDataHeader=新建ArrayList();
HashMap listDataChild=新HashMap();;
List innerhref=new ArrayList();
//private List firstLevelSubMenus=new ArrayList();
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar Toolbar=(Toolbar)findViewById(R.id.Toolbar);
设置支持操作栏(工具栏);
设置支持操作栏(工具栏);
getSupportActionBar().setDisplayShowHomeEnabled(true);
//获取列表视图
expListView=(ExpandableListView)findViewById(R.id.lvExp);
//准备列表数据
//prepareListData();
listAdapter=新的ExpandableListAdapter(此,listDataHeader,listDataChild);
//设置列表适配器
expListView.setAdapter(listAdapter);
textView=(textView)findViewById(R.id.折扣和优惠);
视图=findViewById(R.id.折扣和提供视图);
textView1=(TextView)findViewById(R.id.grad\u offer\u详细信息);
linearLayout01=(LinearLayout)findViewById(R.id.linear\u layout\u inner\u image01);
linearLayoutDiscount01=(LinearLayout)findViewById(R.id.linear\u布局\u内部\u折扣\u图像01);
linearLayoutmens=(LinearLayout)findViewById(R.id.line3);
linearLayoutMens01=(LinearLayout)findViewById(R.id.linear\u layout\u inner\u mens\u image01);
linearLayoutMens02=(LinearLayout)findViewById(R.id.linear\u布局\u内部\u mens\u名称01);
linearLayoutMens03=(LinearLayout)findViewById(R.id.linear\u布局\u内部\u mens\u价格01);
mDemoSlider=(SliderLayout)findViewById(R.id.slider);
新建菜单()。执行(“http://opencart.codeniques.com/shopping/?route=feed/web_api/menu&key=test123$");
新建ImageSlider()。执行(“http://opencart.codeniques.com/shopping/?route=feed/web_api/slider&key=test123$");
新建SpecialProduct()。执行(“http://opencart.codeniques.com/shopping/?route=feed/web_api/specialproduct&key=test123$");
新建折扣产品()。执行(“http://opencart.codeniques.com/shopping/?route=feed/web_api/discountproduct&key=test123$");
新建FrontCategories()。执行(“http://opencart.codeniques.com/shopping/?route=feed/web_api/getfrontcategories&key=test123$");
}
公共类菜单扩展了异步任务{
@凌驾
受保护的void onPreExecute(){
super.onPreExecute();
}
@凌驾
受保护的Void doInBackground(字符串…参数){
试一试{
HttpClient=new DefaultHttpClient();
HttpPost HttpPost=新的HttpPost(参数[0]);
HttpResponse response=client.execute(httpPost);
int status=response.getStatusLine().getStatusCode();
如果(状态==200){
HttpEntity=response.getEntity();
字符串数据=EntityUtils.toString(实体);
JSONObject JSONObject=新的JSONObject(数据);
JSONArray JSONArray=jsonObject.getJSONArray(“类别”);
对于(inti=0;i请尝试使用下面的xml,并告诉我它是否有效
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/linear_layout_outer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<include
android:id="@+id/toolbar"
layout="@layout/toolbar" />
</LinearLayout>
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ScrollView
android:id="@+id/list_item"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:id="@+id/line3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1">
</FrameLayout>
<com.daimajia.slider.library.SliderLayout
android:id="@+id/slider"
android:layout_width="match_parent"
android:layout_height="100dp" />
<!-- <View
android:id="@+id/grad_offer_details_view"
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="@android:color/darker_gray"/> -->
<TextView
android:id="@+id/grad_offer_details"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Grab Before Time Runs Out"
android:gravity="center"
android:textSize="20dp"/>
<View
android:id="@+id/yellow_draw_line"
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="#FF00FF00"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:id="@+id/linear_layout_outer_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:id="@+id/linear_layout_inner_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/line1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:id="@+id/image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:visibility="gone"/>
<TextView
android:id="@+id/text_"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
<TextView
android:id="@+id/text__"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
<View
android:id="@+id/discount_and_offers_view"
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="#d3d3d3"/>
<!-- android:background="@android:color/gray" -->
<TextView
android:id="@+id/discount_and_offers"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Discount And Offers"
android:gravity="center"
android:textSize="20dp"/>
<View
android:id="@+id/green_draw_line"
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="#FF00FF00"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:id="@+id/linear_layout_outer_discount_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:id="@+id/linear_layout_inner_discount_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:id="@+id/discount_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:visibility="gone"/>
<TextView
android:id="@+id/discount_text_"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
<TextView
android:id="@+id/discount_text__"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="#d3d3d3"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none"
android:visibility="gone">
<LinearLayout
android:id="@+id/linear_layout_outer_mans_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<LinearLayout
android:id="@+id/linear_layout_inner_mens_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:visibility="gone">
<ImageView
android:id="@+id/mens_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:visibility="gone"/>
<TextView
android:id="@+id/mens_text__"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
<TextView
android:id="@+id/mens_textPrice_"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
<LinearLayout
android:id="@+id/linear_layout_inner_mens_name01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/mens_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
<LinearLayout
android:id="@+id/linear_layout_inner_mens_price01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/mens_textPrice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
<View
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="@android:color/darker_gray"/>
</LinearLayout>
</ScrollView>
</FrameLayout>
<ExpandableListView
android:id="@+id/lvExp"
android:layout_width="260dp"
android:layout_height="match_parent"
android:layout_gravity="start">
</ExpandableListView>
</android.support.v4.widget.DrawerLayout>
</LinearLayout>
我认为您的scrollview是过度扩展的ListView,这导致了这个问题,为什么会出现这种布局?您可以描述或分享pic您希望从这个布局中获得什么输出吗?scrollview中的项目您希望在可扩展列表视图或其他任何内容下获得所有这些内容吗?不,我希望像任何应用程序一样正常显示。不,它不工作添加应用您的代码list始终处于打开状态,而不是关闭状态。是否可展开列表查看您的抽屉菜单实际上我已将其移除以便在我身边进行测试现在使用工具栏检查更新的答案@AnandJain@AnandJain如果它对你有帮助,那么你可以接受答案。首先我测试了,然后如果它有效,那么我肯定会接受
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/linear_layout_outer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<include
android:id="@+id/toolbar"
layout="@layout/toolbar" />
</LinearLayout>
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ScrollView
android:id="@+id/list_item"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:id="@+id/line3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1">
</FrameLayout>
<com.daimajia.slider.library.SliderLayout
android:id="@+id/slider"
android:layout_width="match_parent"
android:layout_height="100dp" />
<!-- <View
android:id="@+id/grad_offer_details_view"
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="@android:color/darker_gray"/> -->
<TextView
android:id="@+id/grad_offer_details"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Grab Before Time Runs Out"
android:gravity="center"
android:textSize="20dp"/>
<View
android:id="@+id/yellow_draw_line"
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="#FF00FF00"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:id="@+id/linear_layout_outer_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:id="@+id/linear_layout_inner_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/line1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:id="@+id/image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:visibility="gone"/>
<TextView
android:id="@+id/text_"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
<TextView
android:id="@+id/text__"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
<View
android:id="@+id/discount_and_offers_view"
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="#d3d3d3"/>
<!-- android:background="@android:color/gray" -->
<TextView
android:id="@+id/discount_and_offers"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Discount And Offers"
android:gravity="center"
android:textSize="20dp"/>
<View
android:id="@+id/green_draw_line"
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="#FF00FF00"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none">
<LinearLayout
android:id="@+id/linear_layout_outer_discount_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:id="@+id/linear_layout_inner_discount_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:id="@+id/discount_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:visibility="gone"/>
<TextView
android:id="@+id/discount_text_"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
<TextView
android:id="@+id/discount_text__"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:background="#d3d3d3"/>
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="none"
android:visibility="gone">
<LinearLayout
android:id="@+id/linear_layout_outer_mans_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<LinearLayout
android:id="@+id/linear_layout_inner_mens_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:visibility="gone">
<ImageView
android:id="@+id/mens_image01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher"
android:visibility="gone"/>
<TextView
android:id="@+id/mens_text__"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
<TextView
android:id="@+id/mens_textPrice_"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
<LinearLayout
android:id="@+id/linear_layout_inner_mens_name01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/mens_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
<LinearLayout
android:id="@+id/linear_layout_inner_mens_price01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/mens_textPrice"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello"
android:visibility="gone"/>
</LinearLayout>
</LinearLayout>
</HorizontalScrollView>
<View
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="@android:color/darker_gray"/>
</LinearLayout>
</ScrollView>
</FrameLayout>
<ExpandableListView
android:id="@+id/lvExp"
android:layout_width="260dp"
android:layout_height="match_parent"
android:layout_gravity="start">
</ExpandableListView>
</android.support.v4.widget.DrawerLayout>
</LinearLayout>