如何在WebView中为冗长的文本添加“...”省略号?

时间:2012-04-27 08:10:42

标签: java android html css android-layout

我正在使用WebView正确对齐RTL文本。

简单地说,我希望在文本冗长时添加“...”省略号。

使用android:ellipsize="end"

在TextView中存档

有没有办法实现“...”省略或控制WebView中的行数?

以下是代码:

String header = "<html><head><meta http-equiv=\"Content-Type\" +" + "content=\"text/html; charset=UTF-8\" /></head>";
String dt = "<body dir=\"rtl\">" +  o.get(p).getTitle() +"</body></html>";
webView.loadData(URLEncoder.encode(header + dt,"utf-8").replaceAll("\\+"," "), "text/html", "UTF-8");

2 个答案:

答案 0 :(得分:0)

您有两个简单的选择:

  1. 在HTML元素上使用CSS和text-overflow属性:路线here

  2. 如果您需要更好地控制省略号出现的位置并具有方法 - 通过脚本标记在HTML中包含jQuery和jQuery省略号插件:路线here

答案 1 :(得分:0)

您可以解析html并找出页面上最后一个可见的html元素。然后,您可以通过将#ellipsis id附加到该元素来使用以下内容。

CSS Text Wrapping: http://jsfiddle.net/6HcWM/

问题是找到最后一个可见的html元素,因为屏幕尺寸可能会有所不同,缩放级别也可能会有所不同。我猜你需要将JavaScript附加到HTML来发现这个......

也许这会奏效: How to tell if a DOM element is visible in the current viewport?