2015-06-12 56 views
0

在Roku的圖書館,一個按鈕添加到跳板屏幕,您使用的方法(見doc):檢查按鈕標題溢出在Brightscript

AddButton(buttonID as Integer, title as String) as Boolean 

如果title溢出按鈕的寬度,它會自動截斷文本並追加「...」。但是有可能以編程方式檢查是否存在溢出?

回答

2

有沒有一個很好的方法來檢查,但作爲解決方法,你有兩個選擇:檢查字符串長度的最大安全長度或使用GetOneLineWidth()方法。

對於第二個選項,你必須知道按鈕的寬度,字體和字號,如:

button_width = 450 'px 

reg = CreateObject("roFontRegistry")  
arialFont = reg.GetFont("Arial", reg.GetDefaultFontSize(), false, false) 
title_width = arialFont.GetOneLineWidth(titleString, 1280) 'maxWidth set to screen width 

if title_width > button_width then 
    'do your logic here 
end if 
+0

非常感謝!現在的問題是:在你的例子中,你對按鈕寬度進行了硬編碼。有沒有什麼辦法可以通過編程來確定跳板屏幕上按鈕的寬度? –

+0

就我所知,無法通過編程方式來識別按鈕的寬度。 –