私のアプリケーションでは、SherlockFragmentActivity を拡張するクラス Base_Activity を作成し、この方法でアクション バーを定義しました (これは 3 つの異なる項目を持つメニュー バーです)。
public class Base_Activity extends SherlockFragmentActivity {
private ActionBar mActionBar;
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getSupportMenuInflater().inflate(R.menu.main, menu);
mActionBar = getSupportActionBar();
mActionBar.setDisplayUseLogoEnabled(false);
mActionBar.setDisplayShowCustomEnabled(true);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.home:
Intent i = new Intent(this, MainActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
return true;
case R.id.map:
Intent ii = new Intent(this, MainActivity.class);
ii.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(ii);
return true;
case R.id.favorites:
Intent iii = new Intent(this, FavoritesListView.class);
iii.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(iii);
return true;
default:
return super.onOptionsItemSelected(item);
}
} }
次に、この行を追加して、アプリケーションの下部にこのバーを設定しました:
android:uiOptions="splitActionBarWhenNarrow"
これまでのところ問題はありません。すべてのボタンのリスナーを備えた下部のアクションバーがあります。
ここで、SearchBar (または SearchWidget) と、右上隅にあるサブメニューを開く項目を含むトップ アクション バーを追加したいと考えています。
私の問題は次のとおりです。各アクティビティの上部に、各アクティビティの名前が付いた役に立たないバーの代わりに、次の別のトップバーが必要です:
1/検索バー
2/アップのサブメニューを開くアイコン-右隅。
残念ながら、実際には不可能であるとよく読みますが、多くのアプリケーションがこれを使用しています。検索バーを追加する方法を見つけるのに本当に苦労していますが、これは意味がありません: クエリ メソッドの書き方は知っています。一番上にリスナーを配置し、クエリをデータベースに送信してから、リスト ビューを表示します。
アクションバーを下部に保持し、上部にも検索バーを配置するトリックを行うことができる何かを知っている人はいますか? ありがとう !