2012-04-20 11 views
2

私の重複する質問はこれです:PreferenceActivityのは、PreferenceScreenの定義済みのメニューをナビゲートするときに、Androidの戻るボタンを押すのと同じ機能をどのようにして書くことができますか?つまり、私は自分のアプリケーションのユーザに明示的にメニュー選択肢 "Back"を見せて、それらを前のメニューに持ってきたり、メニューのアクティビティを前のアクティビティに戻したりする。特にPreferenceActivityセッション。PreferenceActivity、メニューをナビゲートするPreference項目の作成方法は?

このXMLリソースが別の断片を保持する優先画面を含むことandroid developer documents tell us

注、Prefs1FragmentInnerはここで実施しました。これにより、ユーザはプリファレンスの階層を横断することができます。押して戻ると、各フラグメントがスタックからポップされ、以前の設定に戻ります。

そして、それらについては正しいです。私はメニューを喜んでナビゲートし、PreferenceScreenアイテムをクリックしてその画面を表示し、Androidの戻るボタンを使用してレベルをバックアップします。しかし、私はカジュアルなユーザーが「戻る」ボタンを本当に理解しているのかどうかはわかりませんが、私は開発者のドキュメントでそれを読んでいないうちに知りました。だから私は彼らにメニューの選択肢を明示的に与えてほしいと望んでいます。OnClickListenerは、Androidの戻るボタンの機能を複製しています。

私は戻ってくるメニューの設定を入れようとしました。結局のところ、これは押しと同じことをしませんでした

private OnPreferenceClickListener clickFinishesSuccessfully = new OnPreferenceClickListener() { 
    @Override 
    public boolean onPreferenceClick(Preference preference) { 
     finish(); 
     return true; 
    } 
}; 

PreferenceActivityの私のサブクラスでオーバーライドされないonBackPressedはただ単にfinish()を呼び出すActivity.onBackPressed()に戻って言及することを決定した、私はこのOnClickListenerを試してみました戻るボタン!このボタンを押すと、いつもPreferenceActivityから私をPreferenceActivityというActivityに戻しました。具体的には、クリックしたときの深さに関係なく、メニューをナビゲートしませんでした。

私はここで推測しています:実際にはPreferenceScreenであるオンスクリーン設定をクリックしてサブメニューに入ったとき、私はもはや自分のPreferenceActivityにいません。私は他のアクティビティに参加する必要がありますか?

私の機能的な質問:「戻る」のOnClickListenerに何を入れることができますか?PreferenceメニューをナビゲートするAndroidの戻るボタンと同じ機能を使用するにはどうすればよいですか?

答えて

0

私はカジュアルなユーザーは、戻るボタンについて知っておくべきだと思います。ボタンはどこでも使用されているので、最初の日に使用するのが問題になるかもしれませんが、その後は自然です。 「戻る」ボタンに慣れずに、毎日の仕事をすることはほとんど想像もつかない。

追加したい設定は機能を複製するだけで、他のシステムと一貫性のある方法はありません。 Googleがカジュアルなユーザーのために珍しいものであることを考慮していた場合、電話機の設定にそのオプションが追加されています(PreferenceActivityでもあります)。

+0

問題は、BACKボタンのユーザーエクスペリエンスではありません。私は同じ問題を抱えています。ユーザーが自分の好みをクリックすると、私は仕事をして、自分の好みで1レベル上に行きたいと思っています。たとえば、ユーザーが 'logof'をクリックしたときに、私は彼を1レベル上に移動していくつかの設定を隠す必要があります。 – Kostadin