BlackBerryでヘッダーとフッターを設定する方法を検索したところ、関数setTitle()
とが見つかりましたsetStatus()
。
私の問題は、を拡張するクラスを作成したことVerticalFieldManager
です。では、これはクラスの関数であるため、関数をVerticalFieldManager
表示していません。setStatus
MainScreen
BlackBerryでヘッダーとフッターを設定する方法を検索したところ、関数setTitle()
とが見つかりましたsetStatus()
。
私の問題は、を拡張するクラスを作成したことVerticalFieldManager
です。では、これはクラスの関数であるため、関数をVerticalFieldManager
表示していません。setStatus
MainScreen
あなたが正しい。Aでは直接VerticalFieldManager
できません。setStatus()
BlackBerryUIフレームワークのクラス間の関係を理解することが重要です。
まず、Screen
クラスがあります。通常、aScreen
はデバイス画面全体を占めます。アプリにはさまざまなScreen
クラスを含めることができます。たぶんScreen
、スプラッシュ画像用に1つ、マップビュー用に1つの画面、設定用に1つの画面などです。
画面内には、多くの場合、Manager
クラスがあります。Aは、コンテンツを追加した順に上から下に並べるVerticalFieldManager
種類です。Manager
AManager
は関連するオブジェクトのグループを保持しますが、画面全体の高さまたは幅にまたがる必要はありません。
マネージャーの内部Field
には、通常、複数のオブジェクトがあります。AField
は、階層内の個々のアイテムです。 ButtonField
、、EditField
またはBrowserField
はすべての種類のフィールドです。それらは通常、マネージャー(コンテナー)に追加されます。これらのマネージャーは通常、画面に追加されます。
ですから、あなたの場合、あなたが持っているべきものはスクリーンクラスだと思います。その画面クラスでは、とを呼び出してヘッダーとフッターを設定します。ヘッダーとフッターの間のコンテンツはすべて、画面に追加するに含まれます。このようなもの:setTitle()
setStatus()
VerticalFieldManager
public class MyScreen extends MainScreen {
public MyScreen() {
super(MainScreen.VERTICAL_SCROLL | MainScreen.VERTICAL_SCROLLBAR);
// set a header for this screen
setTitle("My Header / Title");
// screen contents go in the vertical field manager
// NOTE: you can replace VerticalFieldManager with your own class
// that extends Manager, or VerticalFieldManager, if you like
VerticalFieldManager vfm = new VerticalFieldManager();
vfm.add(new LabelField("One"));
vfm.add(new ButtonField("Two", ButtonField.CONSUME_CLICK));
vfm.add(new CheckboxField("Three", true));
add(vfm);
// use a bitmap as a footer
Bitmap footer = Bitmap.getBitmapResource("footer.png");
setStatus(new BitmapField(footer));
}
}