0

showActionBar()これまでのところ、レイアウトを利用して MainActivityのメソッド内に配置することで、私の actionbarsherlock をカスタマイズして有効にしています。

LayoutInflater inflator = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflator.inflate(R.layout.actionitems, null);
ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayShowCustomEnabled(true);
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayShowHomeEnabled (false);
actionBar.setDisplayHomeAsUpEnabled(false);
actionBar.setCustomView(v);


アクションバーが表示されるように、作成した各アクティビティにこれらすべてを手動で入力する必要がありますか? 新しいアクティビティから MainActivity を拡張しようとしましたが、うまくいかないようです。例:

public class MyWebView extends MainActivity

そしてshowActionBar()メソッドを呼び出します。アプリが応答を停止したと表示されます。

4

2 に答える 2

2

ActionBar を表示するためにメソッドを呼び出す必要はありません。これは SherlockActivity が担っていると思うので、あなたのアクティビティは SherlockActivity を拡張するだけでよいのです。

于 2012-10-22T16:09:07.993 に答える
0

マニフェストでアクティビティに適用しているテーマと、styles.xml でのテーマの定義を確認してください。

私は次のようなことをします

<style name="SplashScreen" parent="Theme.Sherlock.Light.DarkActionBar">
    <item name="android:windowActionBar">false</item>
    ...
 </style>

ActionBar を削除します。

このようなものにするか、これをデフォルトとして組み込みのテーマを使用する必要があります。

于 2012-10-22T22:48:46.357 に答える