2017-04-14 10 views
0

ankoを使用して、プレーンボタンの中央にアイコンを配置したいと考えています。私はankoのボタンにアイコン(描画可能)を設定するにはどうすればよいですか?

button.backgroundResource = R.drawable.arrow_forward

を試してみましたが、私は(ボタンexpliciteに背景色を設定することは何もしない)ボタン全体をカバーし、その親から背景色を取得して描画可能です。

enter image description here

Iと同じ効果で、同様にdrawable = ...を試みました。元のアスペクト比を持ち、中央に配置するために、ankoでアイコンを設定するにはどうすればよいですか?

+2

がバックグラウンドを使用しないでください助けctx.getDrawable(R.x.y)

希望を得ることなくそれを得るために、その後、他のリソースや描画可能を使用する必要がある場合。それは常にビュー境界全体を伸ばします。それ以外の場合は、ScaleTypeを設定する方法を探します。おそらく、centerInsideまたはfitCenterが必要です。 – RobCo

答えて

2

まず第一に、あなたはImageButtonを使うべきボタン上のアイコン/画像を設定するために。

次に簡単です。

imageButton{ 
    imageResource = R.drawable.ic_cc_checkmark 
} 

あなたは、リソースが見つからないエラー使用にこれは誰か

+0

よく、私は答えとしてそれを受け入れる必要があり、別の質問をする必要があります - 私はもともと画像のいずれかをボタンの上に、アプリケーションの状態に応じて - 私はボタンのイメージを設定することについて尋ねた。最後に、2つのボタン(イメージとプレーン)とそれに応じた隠し/表示を終えました。 – Antek

1

アンコの仕事の仕組みが不明です。 技術的にAndroid用、あなたはあなたが何をすべき画像のボタンを持っていると仮定すると:

((ImageButton)findViewById(R.id.yourButtonID)).setImageResource(R.drawable.yourDrawable); 
+0

ありがとう、私はちょうどImageButtonを使用している必要があります。最初は、ただ一つのプレーンボタンを使い、状態に応じてアイコンやテキストを設定したいと思っていました。 2つのボタンを使用してそれらを表示/非表示にするのが最も簡単な解決策です。 バックグラウンドで動作する 'scaleType'を得ることができなかったし、' drawableTop | Bottom'なども私のニーズに合っていなかったので、今使っているものに固執します。 まだ答えが受け入れられるべきかどうかわかりません。 – Antek

+0

ImageButtonでscaleTypeを動作させることができないということですか? –

+0

いいえ、scaleTypeをプレーンボタンで操作することができませんでした(つまり、そのようなプロパティはありません)。 ImageButtonはボックスからまっすぐに期待どおりに機能し、画像を拡大/縮小する必要は全くありませんでした。私はそれに応じて私の質問に応じて編集しますが、それはおそらく何度も答えられたようです。 – Antek

関連する問題