简体   繁体   English

Android中ListView项目的子项目的OnClick

[英]OnClick on subItem of listview item in android

I have a listview. 我有一个列表视图。 Its items has subitems. 它的项目有子项目。 how can i get onclick event on subitems. 我如何在子项上获取onclick事件。 The problem is that to get onclick even on subitem, i have to first get onclick on item, then sub item. 问题是,即使在子项目上也要onclick,我必须先在项目上获得onclick,然后再是子项目。 How can i get onclick on subitem directly 我如何直接点击子项目

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                    @Override
                    public void onItemClick(AdapterView<?> adapterView, View view, final int i, long l) {
                        final int a = i + 1;
                        final FrameLayout frameLayout = (FrameLayout) view.findViewById(R.id.luxonetopimageid);
                        final FrameLayout frameLayout1 = (FrameLayout) view.findViewById(luxtwotopimageid);

                        frameLayout.setOnClickListener(new View.OnClickListener() {
                            @Override
                            public void onClick(View view) {
                                int m = (a * 2) - 1;
                                if (arrays[m] == 0) {
                                    if (arraysAmount(arrays) < Integer.parseInt(PreferenceUtils.getNumberPassenger(SelectedVagonActivity.this))) {
                                        frameLayout.setBackgroundResource(R.drawable.place_luks_busy);
                                        arrays[m] = m;
                                    } else
                                        Toast.makeText(SelectedVagonActivity.this, "You can not choose more people that you have ex", Toast.LENGTH_LONG).show();

                                } else {
                                    frameLayout.setBackgroundResource(R.drawable.place_luks_free);
                                    arrays[m] = 0;
                                }
                            }
                        });
                        frameLayout1.setOnClickListener(new View.OnClickListener() {
                            @Override
                            public void onClick(View view) {

                                int n = a * 2;
                                if (arrays[n] == 0) {
                                    if (arraysAmount(arrays) < Integer.parseInt(PreferenceUtils.getNumberPassenger(SelectedVagonActivity.this))) {
                                        frameLayout1.setBackgroundResource(R.drawable.place_luks_busy);
                                        arrays[n] = n;
                                    } else
                                        Toast.makeText(SelectedVagonActivity.this, "You can not choose more people that you have ex", Toast.LENGTH_LONG).show();

                                } else {

                                    frameLayout1.setBackgroundResource(R.drawable.place_luks_free);
                                    arrays[n] = 0;
                                }
                            }

                        });
                    }
                });
            } 

TableView是可用的最佳选择

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM