Algorithm 如何正确告知用户阅读进度
每次向用户显示一个屏幕(或允许用户自由滚动),系统将始终具有以下变量: 顶行可见。屏幕上可见的线条。总行数 在文本中告诉用户其进度的最佳方法是什么 如果系统使用第1行作为0%Algorithm 如何正确告知用户阅读进度,algorithm,design-patterns,user-interface,user-experience,Algorithm,Design Patterns,User Interface,User Experience,每次向用户显示一个屏幕(或允许用户自由滚动),系统将始终具有以下变量: 顶行可见。屏幕上可见的线条。总行数 在文本中告诉用户其进度的最佳方法是什么 如果系统使用第1行作为0%topLine*100/totalines,则在文本末尾,它将是0%,例如11% 如果系统使用从0%开始到100%结束的曲线,每次他切换设备或调整字体/屏幕大小时,百分比都会改变 这个问题有共同的模式吗?我不认为会有共同的模式。该任务是特定于设备和应用程序的 当用户更改字体或字体大小时,您应该计算所有三个变量顶行可见,屏幕可
topLine*100/totalines
,则在文本末尾,它将是0%,例如11%
如果系统使用从0%开始到100%结束的曲线,每次他切换设备或调整字体/屏幕大小时,百分比都会改变
这个问题有共同的模式吗?我不认为会有共同的模式。该任务是特定于设备和应用程序的 当用户更改字体或字体大小时,您应该计算所有三个变量
顶行可见
,屏幕可见行
和总行数
。当用户仅滚动顶行可见时
,屏幕中可见的行应计数
看看微软Word甚至亚马逊Kindle是如何处理这个问题的。按住鼠标滚动时,MS Word会显示进度。亚马逊Kindle在页面底部显示了进度。
它们都显示页码或页面百分比,而不是行,但它们的方法也可以应用于行
另外,如果您的文档不是非常大,那么在进度中显示浮点数也不是一件愉快的事情。在这种情况下,四舍五入的百分比就可以了。您正在开发什么应用程序?您是对的。这是无法解决的。将只将%视为UI元素,并在页面大小更改时更改它。