2016-12-16 5 views
2

私のアプリでは、ロゴイメージでツールバーのスタイルを正しく設定する方法がわかりません。コードネーム1:イメージ付きスタイルツールバー

「Sport1」アプリのツールバーに似ています。 Example

だから私は、リソースのうち、右側に別のコマンドにMultiImageから途中で私のロゴ、ツールバーの左側に戻ってコマンドを必要としています。

また、スクロールするとツールバーのサイズが小さくなるようにしたいと思います。 は、私がこれまでにしようとしているもの:

res_theme = r; 
    Form f = new Form(" ", new BoxLayout(BoxLayout.Y_AXIS)); 
    logo = res_theme.getImage("Logo_Gema_vertikal.png"); 
    f.getToolbar().getTitleComponent().setUIID("toolbar_image"); 
    Style stitle = f.getToolbar().getStyle(); 
    stitle.setBgTransparency(0); 
    stitle.setBgImage(logo); 
    stitle.setBackgroundType(Style.BACKGROUND_IMAGE_ALIGNED_CENTER); 
    stitle.setPaddingUnit(Style.UNIT_TYPE_DIPS, Style.UNIT_TYPE_DIPS, Style.UNIT_TYPE_DIPS, Style.UNIT_TYPE_DIPS); 
    stitle.setPaddingTop(5); 

だから、これはそれが道よさそうです。私は実際に私はツールバーが非常に小さくなり、ツールバーから背景イメージを絞り、フォームにタイトルを追加しない場合、私は

Form f = (" ", ...); 

を行う理由thatsの、タイトルを必要といけません。ツールバーからの中心に置かれたロゴは、スタイリングの理由からです。コマンドを持つ必要はありません。タイトルを忘れる方法はありますか?私は今、完全に透明に設定していますが、私にとってこれは単なる回避策です。

また、ロゴを中央揃えで背景として設定するのではなく、タイトルセクションにイメージとして追加する方がよいと思いますが、これがより良いかどうかわかりませんそれ。

今、スクロールするときにツールバーを小さくしたいと思っています。私はCodename One Toolbar Documentationでサンプルコードを見つけましたが、バックグラウンドイメージが削除されているので、うまくいきません。

これはスクロールアニメーションのためのコードであった:例で

ComponentAnimation title = f.getToolbar().getTitleComponent().createStyleAnimation("Title", 200); 
    f.getAnimationManager().onTitleScrollAnimation(title); 

、それが働きました。私のツールバーでは、私は理由を知りません。私はまた、 "スクロールツールバーの後"のサイズが設定されている場所を見ることができません。

画像を追加することはできますか?ちょっと私のロゴをスクロールする前に1つのツールバーのような、そしてそれはスクロールしながら、textlogoイメージだけでより小さなものに変換しますか?ここで

は、私はそれを動作させることを試みているものを私の全体のコードです:

Form f = new Form(" ", new BoxLayout(BoxLayout.Y_AXIS)); 
    logo = res_theme.getImage("Logo_Gema_vertikal.png"); 
    f.getToolbar().getTitleComponent().setUIID("toolbar_image"); 
    Style stitle = f.getToolbar().getStyle(); 
    stitle.setBgTransparency(0); 
    stitle.setBgImage(logo); 
    stitle.setBackgroundType(Style.BACKGROUND_IMAGE_ALIGNED_CENTER); 
    stitle.setPaddingUnit(Style.UNIT_TYPE_DIPS, Style.UNIT_TYPE_DIPS, Style.UNIT_TYPE_DIPS, Style.UNIT_TYPE_DIPS); 
    stitle.setPaddingTop(5); 
    f.add(new SpanLabel("asdasdasdasd"); 
    ComponentAnimation title = f.getToolbar().getTitleComponent().createStyleAnimation("Title", 200); 
    f.getAnimationManager().onTitleScrollAnimation(title); 
    f.show(); 

答えて

2

例から、あなたのようなルックスは、だけではなく、バックグラウンドでツールバーをスタイリングのタイトルとして画像を使用したい場合は、上記画像。

((Label)toolbar.getTitleComponent()).setIcon(myImage);をそのまま使用してください。

+0

うわー、結果はちょうどあなたの方が短い方法です。スクロール中にツールバーを小さくするためのヒントはありますか?ツールバーのサイズを設定する方法はありますか? –

+0

あなたはこれを意味するのですか:https://www.codenameone.com/blog/new-animation-manager.html答えが正しい場合は、その横のチェックボックスをクリックして受け入れる必要があります –

関連する問題