2

アクション バー sherlock の使用を開始したばかりで、アクション バーの下部に表示される境界線を解決するのに苦労しています。問題の原因が背景画像ではないことは確かです。

 <style name="Theme.MyTheme" parent="@style/Theme.Sherlock.Light">
    <item name="actionBarStyle">@style/Widget.MyTheme.ActionBar</item>
    <item name="android:actionBarStyle">@style/Widget.MyTheme.ActionBar</item>
    <item name="android:actionBarItemBackground">@drawable/states_of_actionbar</item>
    <item name="actionBarItemBackground">@drawable/states_of_actionbar</item>
    <item name="actionDropDownStyle">@style/DropDownStyle</item>
    <item name="android:actionDropDownStyle">@style/DropDownStyle</item>
</style>

<style name="Widget.MyTheme.ActionBar" parent="android:Widget.Holo.ActionBar">
    <item name="android:background">@drawable/action_bar_bg</item>
    <item name="background">@drawable/action_bar_bg</item>
    <item name="android:src">@drawable/action_bar_bg</item>
</style>

上記のスタイル (背景) を値と値-14 で定義しようとしましたが、うまくいきませんでした..

私の推測では、それはホロスタイルの影響を受けている..

太い境界線を取り除くにはどうすればよいですか?

私の問題を明確にするための画像は次のとおりです。

ここに画像の説明を入力

4

1 に答える 1

2

XY 繰り返し背景画像またはタイリングをアクション バーの背景として使用しようとしていると思います。問題は、背景画像がアクション バーの高さをカバーするのに十分な高さではなく、その太い境界線が次の Y タイリング画像の結果であることです。
これは、画像の高さを上げることで修正できます。setTileModeXY(TileMode.REPEAT, TileMode.CLAMP)または、 from クラスのメソッドを使用android.graphics.drawable.BitmapDrawableして、画像を水平方向に繰り返しながら画像の高さを伸ばし、アクションバーの背景として適用することができます。
ここにサンプルコード:

void onCreate(Bundle savedInstanceState) {
        BitmapDrawable bg = (BitmapDrawable)getResources().getDrawable(R.drawable.your_image); // get the image as bitmap drawable
        bg.setTileModeXY(TileMode.REPEAT, TileMode.CLAMP); // set the TileMode.
        getSupportActionBar().setBackgroundDrawable(bg); // applied to actionbar      
}
于 2013-01-15T22:46:03.993 に答える