android - TextView 可横向滚动,但纵向显示为全高
问题描述
我希望我的 TextView 可以横向滚动,但纵向显示为全高。如果我改变 TextView 的高度,我会得到滚动条,但我会在横向和纵向都得到它,见截图:
在纵向中,有足够的空间将 TextView 拉伸到全高。
但是,如果我将纵向方向的 TextView 拉伸到其全高(显示全部内容),则文本将与横向方向的其他元素重叠(参见情况 2),或者如果我移动它,它将看不见并且在那里不会是使文本可滚动的任何滚动条(参见情况 3)。
我想要实现的是横向方向的 TextView 就像情况 1(带有滚动)和纵向方向的情况 2(完整内容)一样。
是否可以在不使用 java 代码的情况下实现它?还是应该使用 if/else 语句?
解决方案
您可以通过创建两个布局资源文件夹来使用 XML 执行此操作——一个用于纵向,另一个用于横向。然后用 ScrollView 包装你的 XML,如下所示;
<ScrollView>
</ScrollView>
如果屏幕不能同时包含所有视图,则上述 ScrollView 包含的所有布局都可以在不同的屏幕尺寸上滚动。注意:您在此 ScrollView 中定义的 XML 是您真正的设计,ScrollView 仅使布局和视图可滚动。更多支持不同屏幕尺寸的信息,可以参考https://developer.android.com/training/multiscreen/screensizes
推荐阅读
- java - 无限分配一个 SharedPreference ,但如何?
- java - 如何对自动散列的密码使用@Size 验证约束
- c++ - int[] 中的 foreach 没有显式声明
- ios - Swift 4.2 SafeAreaLayoutGuide 框架与 View Did Load 上的 view.frame 相同
- r - 在 R 闪亮的作品中阅读 excel 很慢
- html - HTML5:将 div 上加载的对象的语言更改为外部 html 文件
- java - 点在多边形中或不测试
- reactjs - 如何使用 React Redux 发出 post 请求?
- amazon-web-services - 如何将 AWS cloudwatch 日志流式传输到 ELK 堆栈?
- c - 如何在 C 上打印“\”