검은 딸기 프로젝트에 BitmapField
을 추가하려고합니다.클릭 이벤트를 BitmapField (fieldchangeListener)에 추가하는 방법은 무엇입니까?
클래스를 FieldChangeListener
으로 구현하고 FieldChangeListener
메서드를 클래스에 추가했습니다. 심지어 특정 비트 맵 필드에 setChangeListener
을 추가했지만 클릭 이벤트에 응답하지 않습니다.
어떻게 수정합니까?
검은 딸기 프로젝트에 BitmapField
을 추가하려고합니다.클릭 이벤트를 BitmapField (fieldchangeListener)에 추가하는 방법은 무엇입니까?
클래스를 FieldChangeListener
으로 구현하고 FieldChangeListener
메서드를 클래스에 추가했습니다. 심지어 특정 비트 맵 필드에 setChangeListener
을 추가했지만 클릭 이벤트에 응답하지 않습니다.
어떻게 수정합니까?
먼저 BitmapField에는 기본적으로 포커스가 설정되지 않으므로이를 수정하려면 isFocusable을 하위 클래스로 재정의해야합니다. 그런 다음 navigationclick을 재정의하여 fieldChanged 이벤트를 발생시킵니다. 코드는 최소 필드 스 니펫이 외에도
import net.rim.device.api.ui.component.BitmapField;
public class ClickableBitmapField extends BitmapField {
public boolean isFocusable() {
return true;
}
protected boolean navigationClick(int status, int time) {
fieldChangeNotify(0);
return true;
}
}
, 당신이 (당신은 터치 스크린 장치에 대해 신경 제외) 귀하의 필드에 포커스가있을 때 어떤 표시를 제공 할 수 있습니다. 기본 구현은 비트 맵의 투명 영역에 하이라이트를 그립니다. 포커스 상태가 변경 될 때 표시되는 비트 맵을 변경하려면 drawFocus를 무시하고 onFocus 및 onUnfocus를 변경하여이 값을 변경할 수 있습니다.
지금까지 무엇을 얻었는지 알 수 있도록 코드를 게시 할 수 있습니까? – taylonr