2016-12-01 5 views
4

私は3つのビューで構成されたTizenウェアを使用しています。それぞれのビューはnaviframeにプッシュされています。 三面図である。 Native Tizen naviprameの項目を削除する

Genlist_A>プログレス> Genlist_B

ビューのレイアウトの矢印で示されています。ユーザーがGenlist_Aにあるgenlist項目をタッチすると、表示するデータがGenlist_BになるまでProgressbarが表示されます。

このナビゲーションは、すべてのビューが必要なときに表示されるのでうまく機能します。問題はGenlist_BからGenlist_Aに戻るときです。 Progressbarが再び表示され、この場合にGenlist_Aと表示される唯一の方法は、progressbarを閉じることです。

void _create_progressbar() 
{ 
    Evas_Object *nf = local_ad->naviframe; 
    Evas_Object *progressbar; 
    Evas_Object *layout; 

    layout = elm_layout_add(nf); 
    elm_layout_file_set(layout, ELM_DEMO_EDJ, "progessbar"); 
    evas_object_size_hint_weight_set(layout, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); 
    progressbar = elm_progressbar_add(layout); 
    elm_object_style_set(progressbar, "process"); 
    evas_object_size_hint_align_set(progressbar, EVAS_HINT_FILL, EVAS_HINT_FILL); 
    evas_object_size_hint_weight_set(progressbar, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); 
    evas_object_show(progressbar); 
    elm_progressbar_pulse(progressbar, EINA_TRUE); 
    elm_object_part_content_set(layout, "process", progressbar); 
    elm_object_content_set(layout, layout); 
    elm_naviframe_item_push(nf, "ProgressBar", NULL, NULL, layout, "empty"); 
} 

上記のコードは、プログレスバービューの作成を示しています。いくつかのサンプルではelm_naviframe_item_pop_cb_setが使用されています。私は同じことをして、クリックするとプログレスバーが表示されます。

nf_it = elm_naviframe_item_push(nf, NULL, NULL, NULL, scroller, "empty"); 
elm_naviframe_item_pop_cb_set(nf_it, _naviframe_pop_cb, ad->win); 

Genlist_Bのデータをプルすると、どのようにプログレスバーが表示されますか?

+0

Plzがクエリを明確にします。一度戻るボタンをクリックした後にポップアップしない新しいビュー(プログレスバーを含む)ですか? Naviframeナビゲーションのリンクを確認してください。 [link](https://developer.tizen.org/ko/development/guides/native-application/user-interface/efl/ui-containers/creating-naviframe-navigation?langredirect=1)。ここでは、naviframeナビゲーションの例を示し、ナビゲーションプロセスをうまく説明します。 –

+0

@MehediAlamgir新しい展望です。ビューの基本レイアウトはGenlist> Progressbar> Genlistで、genlistは新しいgenlistsです。プログレスバーがnaviframe上にあることを意味し、もし私が戻っていれば、naviframeはnaviframeの前の項目であるnaviframeに戻ります。 – Jonathan

答えて

1

更新 問題の解決方法が見つかりました。私が行った変更

nf_it = elm_naviframe_item_push(nf, NULL, NULL, NULL, scroller, "empty"); 
elm_naviframe_item_pop_cb_set(nf_it, _naviframe_pop_cb, ad->win); 

を使用してnaviframeオフのアイテムをポップで正しい軌道に乗っていた_naviframe_pop_cb

static Eina_Bool _naviframe_pop_cb(void *data, Elm_Object_Item *it) 
{ 
    elm_naviframe_item_pop_to(local_ad->startview); 
    return EINA_TRUE; 
} 

の内側にこれはありませんが、それはlocal_ad->startviewとしてラベル指定naviframeにジャンプですそれは単にgen35の中にElm_Object_Itemを設定することによって簡単に設定されました。

nf_it = elm_naviframe_item_push(nf, NULL, NULL, NULL, genlist, "empty"); 

これは私に役立ちました。

関連する問題