アプリの下部にある非推奨のタブバーを使用しています。私のタブバーの例。
次にActionBarSherlock
、アプリケーションの上部にあるを使用しました。Android v2.3.5およびversion3.2では、問題なく動作します。
しかし、Android v4で実行すると、ActionBar
消え、上の項目はActionBar
オプションメニューとして表示され、サブメニューはコンテキストメニューとして表示されます。
アーキテクチャを変更して、非推奨のタブバーの代わりにフラグメントを使用することはできません。
ActionBar
Android v4に表示させる方法を知っていますか?
または、この場合フラグメントを使用できないため、不可能だと思いますか。
public class MainActivity extends SherlockActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
setTheme(R.style.Theme_Styled);
super.onCreate(savedInstanceState);
}
@Override
protected void onResume() {
super.onResume();
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getSupportMenuInflater().inflate(R.menu.activity_main, menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_settings:
System.out.println("Hello");
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}
そしてstyle.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="Theme.Styled" parent="Theme.Sherlock.Light.DarkActionBar">
<item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>
<item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>
</style>
<style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse">
<item name="titleTextStyle">@style/TitleText</item>
<item name="android:titleTextStyle">@style/TitleText</item>
</style>
<!-- Title on action bar -->
<style name="TitleText" >
<item name="android:textColor">@android:color/white</item>
<item name="android:textSize">12.5dip</item>
</style>
</resources>