2012-01-19 8 views
1

私はJavaコードから動的に作成されたいくつかの四角いボタンを持つ小さなAndroidアプリケーションを開発しています。私はAbsolute.LayoutParamsメソッドを使って幅と高さを与えていますが、廃止予定の警告が出ます。Androidのボタンに幅と高さを与える方法は?

LayoutParams params = new LayoutParams(width,height, 0, 0); 
button.setLayoutParams(params); 

私もこれを試してみました:

button.setHeight(height); 
button.setWidth(width); 

しかし、それは動作しません。それを簡単にしてきれいにする第3の方法がありますか?

ありがとうございます!

答えて

1

になると思う、あなたはむしろViewGroup.LayoutParamsよりも、AbsoluteLayout.LayoutParamsを使用する必要があります。

AbsoluteLayout.LayoutParams params = new AbsoluteLayout.LayoutParams(width, height, 0, 0); 
button.setLayoutParams(params); 

Viewの幅と高さを設定するための適切な方法がLayoutParamsを経由して、そうすることであることに注意してください。 ViewGroup.LayoutParamsおよびView.getLayoutParams()を参照してください。 2番目の例のように、幅と高さを手動で設定する必要はありません。

代わりにRelativeLayout(またはLinearLayoutなど)を使用して実装することを強くお勧めします。AbsoluteLayoutは推奨されていません。画面サイズの異なる多数のAndroid搭載端末があります。AbsoluteLayoutは、すべての端末で機能しません。決して、これまでにAbsoluteLayoutを使用することは常に良い方法です:)。

+0

ビューレイアウトが修正されている場合は、XMLを使用してこのすべてを行うことも良い考えです。あなたのコードはもっときれいに見えます(必要ならば後で変更するのが簡単になります)。 –

3

私はそれがAbsoluteLayoutを使用し

LayoutParams params = new LayoutParams(width,height); 
button.setLayoutParams(params); 
関連する問題