10

私はActionBarSherlockを使用しています

ActionBar のタブの高さに関する同様の質問で、次を使用しました。

<style name="YourTheme" parent="@android:style/Theme.Holo">
   <item name="android:actionBarStyle">@style/blah1</item>
   <item name="android:actionBarTabStyle">@style/blah2</item>
   <item name="android:actionBarSize">80dp</item>
   ..
</style>

そして、代わりに各スタイルでこの特定の属性を使用できると思いました

<item name="android:actionBarSize">80dp</item>

また、ActionBar タブの高さから ActionBar の高さを個別に調整します。

しかし、うまくいきません。

では、これはオーバーライドできない Android の設計原則ですか?

タブは常に ActionBar と同じ高さでなければなりません。

4

6 に答える 6

0

アクションバーのAndroid設計原則をオーバーライドできます。私は試してみましたが、うまくいくかもしれません。

次のコードを styles.xml ファイルにコピーします。

<style name="ThemeSelector" parent="@android:style/Theme.Holo.Light">
    <item name="android:actionBarStyle">@style/myTheme.ActionBar</item>
</style>

<style name="myTheme.ActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:background">imageforactionbar</item>
    <item name="android:titleTextStyle">@style/myTheme.ActionBar.Text</item>
    <item name="android:height">60dp</item>
</style>

1) drawable フォルダに画像を配置する

2) スタイル xml にスタイル テーマ 'myTheme.ActionBar.Text' を記述します。

<style name="myTheme.ActionBar.Text" parent="@android:style/TextAppearance">
    <item name="android:textColor">@color/white</item>
    <item name="android:textSize">@dimen/app_head</item>
</style>

それに応じてマニフェスト ファイルを変更し、インクルードします。

android:theme="@style/ThemeSelector" 

アプリケーションタグの下。

于 2014-02-13T07:21:28.900 に答える
0

Java クラスのコードまたはテーマから動的にアクション バーを作成できます。

ステップ 1: 特定のクラスのアクション バーの画像、名前、色、高さなどを変更できます。これは 1 つのプロセスです。

    ActionBar actionBar = getActionBar();
   // show the action bar title
    actionBar.setDisplayShowTitleEnabled(true);
    LayoutParams test = new LayoutParams(LayoutParams.WRAP_CONTENT,
            LayoutParams.WRAP_CONTENT, Gravity.CENTER | Gravity.CENTER);
    View actionBarView = LayoutInflater.from(this).inflate(
            R.layout.x, null); // layout which contains your
                                            // button.
    actionBar.setCustomView(actionBarView, test);
    actionBar.setDisplayShowCustomEnabled(true);

    SpannableString s = new SpannableString("Test");
    s.setSpan(new ForegroundColorSpan(Color.parseColor("#ffffff")), 0,
            s.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

    // Update the action bar title with the TypefaceSpan instance
    actionBar.setTitle(s);
于 2015-12-10T10:09:49.900 に答える
0

カスタム アクション バーを試してみましたか? 別のレイアウトでアクションバーを完全にカスタマイズできます。

このサンプルでは、​​その方法を示します。

于 2013-09-19T23:24:19.020 に答える
0

私はこれについて100%ではありませんが、私の経験からそれはできません.Androidはそれを許可していません. これは将来変更される可能性がありますが、現時点では、これについてできることはあまりありません。

お役に立てれば!

于 2012-05-21T14:56:26.750 に答える
0

アクションバーをオーバーライドできます

getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.action_bar);

android:layout_width="@dimen/action_BarWidth"
android:layout_height="@dimen/action_BarHeight"
于 2014-04-02T08:52:09.500 に答える