相关疑难解决方法(0)

标识已在expandableListView中单击的组

我正在尝试识别已在expandableListView中单击的视图.当我设置一个时,OnItemLongClickListener我得到一个参数,向我显示列表中单击视图的位置.但是,它也会计算儿童观点.我希望它只计算群组,所以当点击一个群组时,我可以确定它是哪一个.有没有办法做到这一点?

android expandablelistview

4
推荐指数
1
解决办法
5350
查看次数

Android - 我可以将setOnLongClickListener和setOnClickListener用于同一个按钮吗?

我真的可以将这些setOnLongClickListener和setOnClickListener用于同一个按钮吗?因为如果我长按单击按钮,则会执行longclick和正常单击,我不知道为什么.我真的可以这样做吗?请帮我:)

              readDbButton.setOnLongClickListener(
                      new View.OnLongClickListener() {
                          public boolean onLongClick(View view) {
                                //do something
                              return false;
                          }
                      }
              );                  

              readDbButton.setOnClickListener(
              new View.OnClickListener()
              {
                  public void onClick(View view)
                  {
                        //Do something else
                  }
              });
Run Code Online (Sandbox Code Playgroud)

java android onclicklistener

3
推荐指数
1
解决办法
4820
查看次数

ExpandableListView.getPackedPositionGroup始终在onItemLongClick中返回0

对于遇到与我相同问题的人,我会在这里留下:

我试图建立一个OnItemLongClickListenerExpandableListView和想知道的是点击哪个组.按照我在这里提出的许多问题(例如这个问题)的建议,我ExpandableListView.getPackedPositionGroup总是回来0.

这是我使用的代码:

@Override
public boolean onItemLongClick(AdapterView<?> list, View view, int position, long id) {
    Log.d(D, "position: "+position);
    Log.d(D, "id: "+position);
    Log.d(D, "unpacked position: "+ExpandableListView.getPackedPositionGroup(position));

    switch(ExpandableListView.getPackedPositionType(position)) {
        case ExpandableListView.PACKED_POSITION_TYPE_CHILD:
            Log.d(D, "position type: child");
            break;

        case ExpandableListView.PACKED_POSITION_TYPE_GROUP:
            Log.d(D, "position type: group");
            break;

        case ExpandableListView.PACKED_POSITION_TYPE_NULL:
            Log.d(D, "position type: null");
            break;

        default:
            Log.wtf(D, "position type: "+ExpandableListView.getPackedPositionType(position));
    }
    return true;
}
Run Code Online (Sandbox Code Playgroud)

我发现,position和id总是具有相同(正确)的值.但是,类型始终被识别为组,并且解压缩位置始终为0.

那么代码有什么问题呢?

android expandablelistview

1
推荐指数
1
解决办法
3183
查看次数