2012-05-01 24 views
0

我正在使用一些基本編輯字段的GUI。如何穩定BasicEditField contentHeight?

屏幕上有多個Manager,ButtonFieldss,LabelFields等等。

更改字段的文本後,getContentHeight()會返回一個較大的值。 (37與一些文本,38與其他文本)

我指定了填充和字體,但內容高度隨文本字段而變化。

有沒有辦法讓我的BasicEditField的固定大小不會因文本內容而異?

注意getPreferredHeight()根據字體大小返回37的常量值。

回答

0

您可以通過繼承EditField中和壓倒一切的sublayout實現這一目標:

 protected void sublayout(int w, int h){ 
      super.sublayout(w, h); 
      setExtent(w, yourFixedHeightHere); 
     } 

我是否需要到super電話不知道。

+0

沒有必要在這裏打電話給super。 –

+0

實際上,sublayout適用於Manager子類。但是,相同的技術可以很好地調用Field.layout(int w,int h)。請注意,如果不調用super.layout(w,h),則不會繪製文本。所以我想我們必須調用super.layout(w,h); – Bamaco