1

ブラックベリー 10 カスケードで、選択した背景色のボタンを作成したいと考えています。

これどうやってするの ?

4

1 に答える 1

2

少なくともqmlに慣れれば、独自のボタンを作成するのは非常に簡単です:)

以下はカスタム ボタンの例です。CustomButton.qml などのファイルに配置します。プロパティを使用して色を通過させ、簡単に再利用できるようにすることもできます。

Container {
    property alias text: label.text

    signal clicked()  //emits a clicked signal.
        gestureHandlers: [
        TapHandler {
                onTapped: {
                    clicked();
            }
        }
    ]

    layout: DockLayout {
    }

    Container {
        background: Color.Red
        horizontalAlignment: HorizontalAlignment.Fill
        Container {
            horizontalAlignment: HorizontalAlignment.Center
            verticalAlignment: VerticalAlignment.Center
            topPadding: 10
            bottomPadding: 15
            leftPadding: 20
            rightPadding: 20
            Label {
                id: label
                text: "demo"
                textStyle {
                    base: tsLabel.style
                }
                topMargin: 0
                bottomMargin: 0
                topPadding: 0
                bottomPadding: 0
            }
        }
    }

    attachedObjects: [
        TextStyleDefinition {
            id: tsLabel
            base: SystemDefaults.TextStyles.BodyText
            fontSize: FontSize.Small
            color: Color.White
            fontWeight: FontWeight.W100
        }
    ]
}

これをメイン ページで使用するには、次のようにします。

CustomButton {
    text: "my button"
    onClicked: {
        //do code
    }
}

これを強化するには、onTapped 関数にアニメーションまたは色の変更を追加します。Color.Red の代わりに imagePaint を使用して、ボタン イメージに 9patch を使用することもできます。

于 2013-06-04T14:30:48.527 に答える