我正在创建一个在TextView中显示文本的应用程序。由于文本可能非常大,它嵌套在ScrollView中。
在文本变得很大之前,一切都很好——例如整本书的内容。对于如此大的内容,应用程序的用户界面开始没有响应,因为内存需求很大。
解决方案1简单地将书的内容拆分并显示在多个页面中,例如使用ViewPager2。
是的,这肯定行得通。然而,在我的情况下,文本的“无限”垂直滚动是UI设计的决定,因此这个解决方案对我来说不是一个选项。
解决方案2使用RecyclerView并将“book”的每一行渲染为单独的TextView实例。
这将是一个很好的解决方案,但不幸的是,我需要支持文本选择。此解决方案将阻止用户选择多行文本。
问题你能提出任何解决方案,允许无限(类似回收器视图)滚动文本,同时保留所有文本选择和文本格式功能吗?
RecyclerView
是您的最佳选择:
相反:
1) recyclerView的项目将是一些LinearLayout
,其中包含一个文本视图
[它将类似于页面项目]。
2)假设图书是一个大的< code >字符串,将它分成子字符串块(子字符串就像一个页面),并将这些子字符串块放在某个列表中:
List<String> chunksList = new ArrayList<String>();
3) 稍后将此列表传递给适配器,并根据位置呈现每个子字符串。
adapter = new bookAdapter(........., chunksList);
4) 不管这本书有多大,您都可以动态滚动。因为这取决于chunksList
及其包含的子字符串数量(请记住,对于要呈现的每本书,chunksList
将有所不同)。
5)同样使用这种方法,你可以使用分页。
祝你好运。
问题内容: 我一直在寻找使用CSS编写的类似Google Chrome的标签,但是找不到。 我正在尝试复制外观,以便在Web应用程序或网站中使用它。 问题答案: 是的,用css3 艾夫(Ive)发表了一篇关于如何对其进行深入研究的博客,可悲的是,除非您使用图像,否则诺努斯将无法继续工作 编辑: 删除了对redeyeoperations的旧引用,现在导致其链接服务器场。这是一个较轻的版本,它在第三方
在< code>NestedScrollView的末尾有一个< code > endlesscrecyclerview 。< code>EndlessRecyclerView表示:当用户滚动到RecyclerView的底部时,它会加载更多数据。这已经在其他地方实现并运行了,但是当我将recyclerView放入< code>NestedScrollView时,< code>OnScrollList
问题内容: 嗨,我想使用WMI类来查找应用程序和产品信息。但是问题是我想使用Java或任何脚本语言(如python,javascript或perl)。我听说过JWMI,这可能是一个选择。有人可以帮我吗??? 问题答案: JavaScript和Java不是一回事。 JavaScript Windows脚本宿主(WSH)下提供了JavaScript。有了它,访问WMI相当容易: jWMI(Java)
问题内容: doIt函数将打印“ dad”。有没有办法让它打印“儿子”? 问题答案: 是。但是就变量而言,它会被覆盖(将新值赋予变量。将新定义赋予函数是Override)。 在父类的块中使用时,该值将得到反映 如果变量是静态的,则在初始化时使用静态块更改其值, 否则更改构造函数。 你还可以稍后在任何块中更改该值。它将反映在超一流
下午好, 问候你,亚历桑德罗