2010-12-11 3 views
1

Blackberry에서 레이블 필드 너비의 너비는 어떻게 설정할 수 있습니까? 당신은 몇 가지로 원하는 것을 그 레이아웃 매니저를Blackberry의 레이블 필드 너비 설정

LabelField lField = new LabelField("text") 
    { 
     protected void layout(int width, int height) { 
      super.layout(width, height); 
      this.setExtent(HARD_CODED_WIDTH, this.getHeight()); 
     } 
    }; 

그러나 선택이다 할 수있는 올바른 방법 (또는 쓰기) : 당신은 그냥 신속하고 더러운 뭔가,이 작업을 수행해야합니다 그럼 경우

답변

5

다양한 화면 크기 및 기타 사항을 고려한 유연성. RIM은 당신 자신의 매니저를 쓸 때 몇 가지 괜찮은 견본을 가지고 있습니다. JustifiedEvenlySpacedHorizontalFieldManager를 검색하십시오. 또는 블랙 베리를 생각해보십시오 : http://www.thinkingblackberry.com/archives/116

+0

URL이 더 이상 작동하지 않습니다. http://code.google.com/p/blackberry-douban-radio/source/browse/trunk/DoubanRadio/src/fm/douban/component/JustifiedEvenlySpacedHorizontalFieldManager.java?r=3에서 예를 발견했습니다. 똑같은가요? –

1

cjp의 답변은 corrent이지만 나는 그것에 더 많은 것을 추가하고 있습니다. 텍스트의 길이가 더 위의 코드에 잘라지고 인 경우

당신은 코드를 아래와 같이 할 수있다 : 텍스트의 길이는 당신이 가지고있는 폭이 더 후 경우 코드 위

LabelField lField = new LabelField("text") 
{ 
    protected void layout(int width, int height) { 
     super.layout(width, height); 
     this.setExtent(HARD_CODED_WIDTH, this.getHeight()); 
    } 
    public int getPreferredWidth() { 
    return HARD_CODED_WIDTH; 
} 
}; 

텍스트를 잘라하지 않습니다 밝히다. 그리고이 경우 텍스트는 다음 줄로갑니다.

희망 사항이 있습니다.