2011-08-16 4 views
1

イメージビューでマージンを動的に設定する方法は知っていますか?イメージビューのマージンを動的に設定する

あなたはおそらくこのような何かを探している
+0

上で直接動作しません。http://stackoverflow.com/questions/3416087/how-to -set-margin-of-image-view-using-code-not-xml – pav

答えて

7

http://developer.android.com/reference/android/view/View.html#setLayoutParams(android.view.ViewGroup.LayoutParams)

注けれども方法の説明のこの部分:

それ が配置されるべき方法を指定するこのビューの親へのこれらの供給パラメータを

つまり、ImageViewがLinearLayoutの内部にある場合、このメソッドにLinearLayout.LayoutParamsを指定する必要があります。

ImageView image = new ImageView(this); 
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(100, 100); 
params.setMargins(1, 1, 1, 1); 
image.setLayoutParams(params); 

次に、setMarginsを呼び出すか、LayoutParamsのleftMargin、bottomMarginなどのプロパティを設定します。

0

これを試してみて、動的にレイアウトを作成し、(setmarginとしてのパラメータを設定)ImageViewの

ImageView im; 
im = (ImageView) findViewById(R.id.your_image_in_XML_by_id); 
RelativeLayout.LayoutParams layout = new RelativeLayout.LayoutParams(im.getLayoutParams()); 
         layout.setMargins(counter*27, 0, 0, 0);//left,right,top,bottom 
         im.setLayoutParams(layout); 
         im.setImageResource(R.drawable.yourimage) 
関連する問題