2011-04-07 65 views
0

我将自定义视图添加到自定义ArrayAdapter。该XML布局我使用看起来像这样Horizo​​ntalScrollView在AlertDialog中

<LinearLayout> 
    <HorizontalScrollView> 
    <LinearLayout> 
     <TextView></TextView> 
     <TextView></TextView> 
     <TextView></TextView> 
     <TextView></TextView> 
    </LinearLayout> 
    </HorizontalScrollView> 
<LinearLayout> 

我然后将适配器我AlertDialog.Builder为我的自定义ArrayAdapter,并提供OnClickListener。我的对话框显示正常,我可以垂直滚动列表以及水平滚动每个视图。但是,当我点击任何视图时,它永远不会触发OnClickListener

我尝试设置最上面的LinearLayoutsdescendantFocusability="blocksDescendants"但这没有效果。无论如何要在AlertDialog内做到这一点?我曾尝试创建一个实现了OnGestureListener的自定义对话框,但没有任何一个手势事件会被调用。

回答

0

我不确定是否能够重现您描述的相同问题,但我可以重现类似的东西。也许如果你要发布一个更完整,有效的代码示例,它可能有助于复制你的问题。

无论如何,解决方案可能是不注册子组件以使其具有onClickListeners,因为当它们具有onClickListeners时,父母将不会收到点击事件。

相关问题