所有膨胀视图的Android OnClick侦听器

所有膨胀视图的Android OnClick侦听器,android,Android,我遇到了一个问题,不知怎的,我在我的应用程序中找不到它的视图。在那个死区,我需要为那个区域设置一个点击侦听器,但我找不到该项 我的问题是: 是否有方法获取已为某个活动膨胀的所有视图,并添加一个侦听器以标识单击了哪个视图?您可以在onCreate()为视图设置侦听器中膨胀视图 像 然后您可以在中捕获单击侦听器 @override public void onClick(View v) { switch(v.getId()) { case R.id.youViewId1:

我遇到了一个问题,不知怎的,我在我的应用程序中找不到它的视图。在那个死区,我需要为那个区域设置一个点击侦听器,但我找不到该项

我的问题是:


是否有方法获取已为某个活动膨胀的所有视图,并添加一个侦听器以标识单击了哪个视图?

您可以在
onCreate()
为视图设置侦听器中膨胀视图 像

然后您可以在中捕获单击侦听器

@override
public void onClick(View v)
{
   switch(v.getId())
   {
    case R.id.youViewId1:
      // youViewId1  id view is clicked
      break;

    case R.id.youViewId2:
     // youViewId2  id view is clicked
      break;
   }
}

您可以在该活动中实现
View.onClicklistener
,并覆盖
onClick
方法,如下所示:

 Public class MyActivity extends activity implements OnClicklistern {
Public void onCreate(....) {
//here you can inflate view and add setOnclicklister to every view to this activity
}

@Override
Public void OnClicklistern(View view) {
Switch (c.getid()) {
Case R.id.oneview :
//do something
break;
Case R.id.anotherview:
// do something
break;
.......
.......
}
}
}

findViewById(R.id.id\u视图)。setOnClickListener
?问题是我不知道我正在单击的项目的id,因此我无法向其添加侦听器。为什么你不知道?你正在创建视图还是什么??所以你不知道身份证。我有多个碎片相互膨胀。我已尝试为所有膨胀的片段视图添加onClickListener,但单击死点时不会触发任何视图。我已尝试为所有膨胀的片段视图添加onClickListener,但单击死点时不会触发任何视图。死点似乎是listview的背面,请参见图。为什么你需要一个点击监听器?在任何情况下,对于您的情况,ListView都不是您想要的。也许你想把它变成一个线性布局。我需要一个监听器,因为当点击除底部栏以外的任何东西时,我需要用一个新的片段交换该部分。我还使用了listview,以便可以动态添加部件。它也有机会超过视图空间,所以我需要它能够向下滚动。我不知道线性布局是否有效。您可能可以在滚动视图中使用线性布局来实现这一点。如果在LinearLayout和其他视图上有onClickListener,则其他视图可能会使用单击,因此只有在单击空白区域时才单击LinearLayout。
 Public class MyActivity extends activity implements OnClicklistern {
Public void onCreate(....) {
//here you can inflate view and add setOnclicklister to every view to this activity
}

@Override
Public void OnClicklistern(View view) {
Switch (c.getid()) {
Case R.id.oneview :
//do something
break;
Case R.id.anotherview:
// do something
break;
.......
.......
}
}
}