2

私はよくグーグル検索し、カスタム Android UI ウィジェットを (コードと xml で) 作成する方法を見つけようと何時間も費やしました。しかし、バイパスする方法がわからないいくつかの制限があります。したがって、架空のボタンをモックアップし、その実装方法を知りたいと思います。

カスタム Android ウィジェットの作成に問題があるのは私だけではないと確信しています。

ここに画像の説明を入力

4

3 に答える 3

2

マルチカラーの背景については、シェイプ ドローアブルを使用して成功しました。

たとえば、グレーのソリッド ゾーンを定義してから、黒に移行するグラデーションと黒のソリッド ゾーンを定義するには、次のようにします。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape android:shape="rectangle">
        <corners android:radius="10px" />
        <solid android:color="#FF444444"/>
    </shape>
</item>
<item
    android:left="45dp">
    <shape android:shape="rectangle">
        <gradient
        android:angle="0"
        android:centerX="15%"
        android:startColor="#FF444444"
        android:centerColor="#FF000000"
        android:endColor="#FF000000"
        android:type="linear"/>
    </shape>
</item>
    <item>
    <shape android:shape="rectangle">
        <corners android:radius="10px" />
        <stroke
            android:width="2px"
            android:color="#FF444444" />
        <solid android:color="#00000000"/>
    </shape>
</item>
</layer-list>

ここでのクールな点は、レイヤー化された形状 ( items ) です。黄色の三角形、赤色の三角形、緑色の四角形を定義できるはずです。

上記のレイアウトは次のようにレンダリングされます。 スナップショット

(上記のレイアウトではアイコンとテキストはレンダリングされません)

于 2012-09-05T20:59:45.603 に答える
0

カスタム ウィジェットを作成する場合は、Android ソースから最も類似した標準ウィジェットをチェックアウトして変更することをお勧めします。

于 2012-09-05T19:41:53.843 に答える