65

だから私はICS用のAndroidDevDesignサイトを見ていましたが、すべてのアプリには次の字幕/セクションヘッダーがあります。

ICSセクションヘッダー

このようなラベルを実現するためのカスタムスタイリングを誰かが知っているのだろうかと思いました。Android SDKでこのようなラベルビューは見つかりませんでしたが、これらの外観は本当に気に入っています。

前もって感謝します!

4

4 に答える 4

70

だから、これは私が最終的に使用したものです:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="sectionHeader" parent="android:Widget.Holo.Light.TextView">
        <item name="android:drawableBottom">@drawable/section_header</item>
        <item name="android:drawablePadding">4dp</item>
        <item name="android:layout_marginTop">8dp</item>
        <item name="android:paddingLeft">4dp</item>
        <item name="android:textAllCaps">true</item>
        <item name="android:textColor">@color/emphasis</item>
        <item name="android:textSize">14sp</item>
    </style>
</resources>

@drawable/section_header の場所:

<?xml version="1.0" encoding="utf-8"?>
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <size android:width="1000dp" android:height="2dp" />
    <solid 
        android:color="@color/emphasis"/>
</shape>

そして @color の:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="emphasis">#31b6e7</color>
    <color name="bg_gray">#cecbce</color>
</resources>
于 2012-04-12T02:34:13.513 に答える
52

ブランドンの権利。青色のスタイルを取得するには、今のところカスタム作業を行う必要があります。これは、新しいデザイン ガイド全体に散りばめられているため、イライラさせられます。

Widget.Holo.Light.TextView.ListSeparator残念ながら、カスタム スタイルは非公開であるため、その親として参照することはできません。

ただし、灰色の線だけに関心がある場合は、ストック Android スタイルをインラインで使用できます。

style="?android:attr/listSeparatorTextViewStyle"

これにより、少なくとも灰色の線がすべて大文字のスタイルになります。

ここに画像の説明を入力

ブランドンの答えは、カスタムブルースタイルにあなたを導きます.

参考までに、List Separators の現在の (v15) Android スタイルから正確にサブクラス化したい場合、Android で使用され、新しいスタイルにコピーできる組み合わせスタイルWidget.TextView.ListSeparatorWidget.Holo.Light.TextView.ListSeparator次のとおりです。

<item name="android:background">@drawable/list_section_divider_holo_light</item>
<item name="android:textAllCaps">true</item>
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textStyle">bold</item>
<item name="android:textColor">?android:textColorSecondary</item>
<item name="android:textSize">14sp</item>
<item name="android:gravity">center_vertical</item>
<item name="android:paddingLeft">8dip</item>

ただし、ドローアブルはプライベートであるため、独自のディレクトリにコピーする必要があります。

于 2012-05-09T00:29:43.693 に答える
2

それがどのスタイルなのか正確にはわかりませんが、設定アプリもそれを使用しています(または非常に似たもの)。セクションヘッダーです。また、TextField はtextAllCapstrue に設定されています。textAllCaps を探すと、おそらく SDK のリソース フォルダーで見つけることができます :)

于 2012-04-05T00:15:26.533 に答える
0

つまり、線を描画するには、高さをtu1dp程度に設定したビューを使用するだけです。背景属性を使用して色を設定できます

于 2013-02-08T20:11:36.950 に答える