質問

のあるRIM Blackberry OS4.6+が新機能-表示することが可能通知アイコンにステータスバー.統合アで、アプリケーションの利用でを迅速に、参考情報をユーザー:Dealler-不在着信、メッセージ-未読メッセージなど。

削除され死ImageShackリンク

利用可能な通知アイコン:

  • 着イベント
  • RSSの更新
  • オブジェクトの状況(ex.気象-アプリの活動/gps信号強度)
  • その他

今後は、ハウトゥガイドこの特徴です。

役に立ちましたか?

解決

ApplicationIndicatorクラス

追加/変更/削除通知アイコンも利用できま ApplicationIndicator クラス:

を適用指標で構成されるアイコンやオプションの数値となる。
アイコンの位置の指標に沿った領域とその他などの新しいメールカウンター、カレンダーにおける注意話カウンター、安全で確認してください。

  • 用できる登録のみを指標として登録することもに電話が始まります。
  • すべての指標をクリアに電話で再度入れ直してください。
  • 指標が見えない場合がありますのでスペースのステータスバー
  • 表示の寸法に依存現在のテーマは、電話の画面サイズとなります。
  • アイコンのサイズが変化から10×10に24x24.
  • 場合に表示が初期化され大きなアイコンをその例外がスローされます。
  • 表示できるオプションの数値が通常としています。
  • ることで値をマイナス0にしております。
  • た場合の指標としてカウンターでのやりとりでいたが、その値は0になります。
  • た場合の指標値が大きすぎると表示'99+'や'999+'

通知アイコンを追加

こしていくべきだと思のインスタンス ApplicationIcon:

アプリケーションアイコンクラスと連動して使用することにより適用指標と応用ます。
でincapsulatesものであり、その絵画の物件です。

EncodedImage mImage = EncodedImage.getEncodedImageResource("indicator_icon.png");
ApplicationIcon mIcon = new ApplicationIcon(mImage);

そうであれば登録ApplicationIndicatorと ApplicationIndicatorRegistry:

ApplicationIndicatorRegistry.登録(アイコン, iconOnly, 可視)
アイコン -アイコンに表示される指標領域
iconOnly -指定した場合の指標はアイコンの表現のみな価値
可視 -かどうかを指定す指標が見え、当初

ApplicationIndicatorRegistry reg = ApplicationIndicatorRegistry.getInstance();
ApplicationIndicator indicator = reg.register(mIcon, false, true);

修正指示のアイコンと価値

修正のアイコンを使用 ApplicationIndicator.setIcon 方法:

ApplicationIndicatorRegistry reg = ApplicationIndicatorRegistry.getInstance();
ApplicationIndicator appIndicator = reg.getApplicationIndicator();
appIndicator.setIcon(icon);

変数値を使用 ApplicationIndicator.setValue 方法:

ApplicationIndicatorRegistry reg = ApplicationIndicatorRegistry.getInstance();
ApplicationIndicator appIndicator = reg.getApplicationIndicator();
appIndicator.setValue(value);
  • が非常に大きな価値を提供して指標を表示'99+'や'999+'.

隠示す指標、利用 ApplicationIndicator.setVisible

登録は解除ApplicationIndicator

がんアプリの指標泊ステータスバーでのやりとり ApplicationIndicatorRegistry.登録は解除() でアプリケーションにあります。

サンプルアプリケーション

アイコンです:

削除され死ImageShackリンク

画面:

削除され死ImageShackリンク

コード:

import net.rim.blackberry.api.messagelist.ApplicationIcon;
import net.rim.blackberry.api.messagelist.ApplicationIndicator;
import net.rim.blackberry.api.messagelist.ApplicationIndicatorRegistry;
import net.rim.device.api.system.EncodedImage;
import net.rim.device.api.ui.MenuItem;
import net.rim.device.api.ui.component.LabelField;
import net.rim.device.api.ui.component.Menu;
import net.rim.device.api.ui.container.MainScreen;

class Scr extends MainScreen {
    EncodedImage mImageGreen = EncodedImage
            .getEncodedImageResource("bb_icon_green.png");
    ApplicationIcon mIconGreen = new ApplicationIcon(mImageGreen);
    EncodedImage mImageRed = EncodedImage
            .getEncodedImageResource("bb_icon_red.png");
    ApplicationIcon mIconRed = new ApplicationIcon(mImageRed);

    ApplicationIcon mIcon = mIconGreen;

    public Scr() {
        add(new LabelField("Use menu to:"));
        add(new LabelField("Register indicator"));
        add(new LabelField("Increment value"));
        add(new LabelField("Decrement value"));
        add(new LabelField("Switch icon"));
        add(new LabelField("Unregister indicator"));
    }

    MenuItem menuRegister = new MenuItem("register", 0, 0) {
        public void run() {
            registerIndicator();
        };
    };
    protected int mValue = 0;
    MenuItem menuIncrement = new MenuItem("increment", 0, 0) {
        public void run() {
            mValue++;
            updateValue(mValue);
        };
    };
    MenuItem menuDecrement = new MenuItem("decrement", 0, 0) {
        public void run() {
            mValue--;
            updateValue(mValue);
        };
    };
    MenuItem menuSwitchIcon = new MenuItem("icon", 0, 0) {
        public void run() {
            mIcon = (mIcon == mIconGreen) ? mIconRed : mIconGreen;
            updateIcon(mIcon);
        };
    };
    MenuItem menuUnregister = new MenuItem("unregister", 0, 0) {
        public void run() {
            unregisterIndicator();
        };
    };

    protected void makeMenu(Menu menu, int instance) {
        super.makeMenu(menu, instance);
        menu.add(menuRegister);
        menu.add(menuIncrement);
        menu.add(menuDecrement);
        menu.add(menuSwitchIcon);
        menu.add(menuUnregister);
    }

    private void registerIndicator() {
        try {
            ApplicationIndicatorRegistry reg = ApplicationIndicatorRegistry
                    .getInstance();
            ApplicationIndicator indicator = 
                    reg.register(mIcon, false, true);
        } catch (Exception e) {
        }
    }

    private void unregisterIndicator() {
        try {
            ApplicationIndicatorRegistry reg = ApplicationIndicatorRegistry
                    .getInstance();
            reg.unregister();
        } catch (Exception e) {
        }
    }

    void updateValue(int value) {
        try {
            ApplicationIndicatorRegistry reg = ApplicationIndicatorRegistry
                    .getInstance();
            ApplicationIndicator appIndicator = 
                    reg.getApplicationIndicator();
            appIndicator.setValue(value);
        } catch (Exception e) {
        }
    }

    void updateIcon(ApplicationIcon icon) {
        try {
            ApplicationIndicatorRegistry reg = ApplicationIndicatorRegistry
                    .getInstance();
            ApplicationIndicator appIndicator = 
                    reg.getApplicationIndicator();
            appIndicator.setIcon(icon);
        } catch (Exception e) {
        }
    }
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top