Facebookのようなスタイルのメニューをアプリに実装しました。これにより、基本的にボタンをクリックし、ビューを横にスライドして、トップレベルビューの背後に隠されたメニューにアクセスできます。
現在、一般的なAndroidアプリと同様に、すべてのビュー(このアプリには多くの画面があります)が個別のXMLファイルに含まれています。フラグメントを多用していることに注意してください。
目標は、アクティビティとフラグメントをトップレベルのビューに膨らませる代わりに、コードを抽象化して、すべての一部となるこのトップレベルの親のこの子に膨らませることです。私たちの活動(私たちのすべての活動はカスタム活動からサブクラス化されています)。
menu.xmlが機能する方法は、空のネストされた子FrameLayoutをホストする外部FrameLayoutを使用することです。
私たちが避けようとしているのは、この外部メニューコードをビューXMLのすべてにラップすることですが、これは確かに機能します。
空のネストされたFrameLayoutを1つのファイルに含むメニューコードをプログラムで作成する方法を見つけようとしています。次に、フラグメントまたはアクティビティのXMLを次のように膨らませます。
listView = (PullToRefreshListView) inflater.inflate(R.layout.pull_to_refresh_list_view, container, false);
そうする代わりに、ネストされた子FrameLayoutにそれを膨らませます。このようなものが私が試みているものです:
listView = (PullToRefreshListView) inflater.inflate(R.layout.pull_to_refresh_list_view, container, false);
((FrameLayout) getActivity().findViewById(R.id.child)).addView(listView);
現在、これにより、「アクティビティを再開できません。フラグメントMyFragment [id=0x7f090019]のID0x7f090019のビューが見つかりません」という結果になります。
どんな入力でも大歓迎です。ありがとうございました!