我一直在寻找解决这个问题的方法,这似乎是微不足道的。我有一个带有各种子元素的 ExpandableListView,包括一个 TextView。我希望在 TextView 中检测到链接,所以我尝试android:autoLink="web"
使用Linkify.addLinks(textView, Linkify.WEB_URLS);
两者都将在 TextView 中创建超链接。我遇到的问题是,当TextView中有链接时,带有链接的ExpandableListView项目在触摸项目内的任何元素时将不再展开。
我已添加android:descendantFocusability="blocksDescendants"
到 ExpandableListView 项目的最顶部布局。这允许项目展开,但仅在触摸项目中的任何其他子元素时。如果我用链接触摸 TextView 中的非超链接文本,则永远不会调用 onGroupExpand。如果我设置android:linksClickable="false"
,它会按应有的方式展开,链接会突出显示,但显然这些链接是不可点击的并且什么也不做。
我在这里阅读了这个答案,ExpandableListView centains a link doesn't expand,这表明这是不可能的,但是这似乎不是真的,因为android:descendantFocusability="blocksDescendants"
允许它,只是在触摸非超链接文本时不是。我在这里读过这是一个错误,https://code.google.com/p/android/issues/detail?id=3414,但被拒绝了。
如何在触摸任何非超链接 TextView 文本时使链接可点击,同时使项目展开?