2012-05-08 2 views
3

現在押されているボタンのテキストを少しシフトしたいと思います。私の場合、ボタンにはカスタムの背景があり、テキストが移動するとボタンがはるかに良く見えます。現在押されているボタンにテキストをシフトする方法は?

私は別のパディングを持つ2枚のNinePath画像作ら:

enter image description here

enter image description here

そして、セレクタを使用して設定します。

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 

    <item android:drawable="@drawable/btn_pressed" android:state_pressed="true"/> 
    <item android:drawable="@drawable/btn"/> 

</selector> 

これは動作しません、テキストの遺跡をボタンが押されたとき(バックグラウンドがスワップされているとき)その位置に移動します。

私のNinePathイメージはOKですか?タッチリスナーを設定せずにテキストを移動する方法はありますか?

P.S. https://stackoverflow.com/a/7677098/694770

答えて

0

が、これは

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 

    <item android:text="Pressed state text" android:state_pressed="true"/> 
    <item android:text="Default text"/> 

</selector> 
+0

ドロアブルを指定する必要があるため、例外が発生します。しかし、それが定義されていても、テキストは変化しません。私はセレクタがdrawableのためだけに働くと思う。 – Andrej

1

あなたの9-パッチ画像が良く見えるお試しください:同じ質問がすでに聞かれましたが、「答えは」まさに私が試したソリューションです。つまり、私は全く同じ問題を抱えていたので、私はこの質問に出くわしました。私のイメージもうまくいきませんでした。

私はButtonをサブクラス化し、パディングをつぶすことになりました。 More info here

関連する問題