HorizontalScrollView 中的自定义视图不滚动
Posted
技术标签:
【中文标题】HorizontalScrollView 中的自定义视图不滚动【英文标题】:Custom View inside HorizontalScrollView not scrolling 【发布时间】:2012-03-10 15:48:42 【问题描述】:我在 HorizontalScrollView 中有一个自定义视图,如下所示:
<HorizontalScrollView
android:layout_
android:layout_
android:fillViewport="true"
>
<com.mina.demo.customwidgets.MyCustomView
android:layout_
android:layout_
/>
</HorizontalScrollView>
在 MyCustomView onDraw() 方法中,我绘制了一些文本和位图。
问题是自定义视图的宽度变得大于屏幕宽度,并且环绕水平滚动视图不会像禁用一样滚动。
这可能是什么原因?
【问题讨论】:
您可以尝试将自定义视图的宽度更改为 fill_parent 并查看它是否有所改变。 【参考方案1】:如果您的MyCustomView
总是大于屏幕宽度,那么将HorizontalScrollView
的宽度设置为等于其内容是安全的。请尝试以下操作:
<HorizontalScrollView
android:layout_
android:layout_
android:fillViewport="true"
>
<com.mina.demo.customwidgets.MyCustomView
android:layout_
android:layout_
/>
</HorizontalScrollView>
我认为现在的问题是HorizontalScrollView
的宽度固定为fill_parent
。默认情况下启用滚动,您没有手动更改它,所以这不是问题。
【讨论】:
当我尝试你的解决方案时,我的自定义滚动内容是不可见的,真的不知道为什么 你能发布你的整个布局文件吗?仅仅改变android:layout_width
不应该这样做......
这个布局被夸大为 ListView 的项目视图
好的...然后尝试将滚动视图的layout_width
设置为 320(或者您正在使用的 AVD 的屏幕尺寸)。以上是关于HorizontalScrollView 中的自定义视图不滚动的主要内容,如果未能解决你的问题,请参考以下文章
包装在 HorizontalScrollView 中的 Android Listview 高度不正确,其中列表项的高度不同
HorizontalScrollView 以编程方式滚动而没有焦点
如何修复 HorizontalScrollView 的滚动宽度?
DrawerLayout 与 HorizontalScrollView 进入内容菜单