如何按编程中的约束布局添加左右边距



我已经以编程方式创建了一个图像视图,并将其添加到约束布局中。现在我想从imageView.的左右和右添加边距

这就是我所做的。

ImageView imageView = new ImageView(this);
imageView.setId(View.generateViewId());
constraintLayout.addView(imageView);
//Convert DP to PX
int margin = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 
                                             10,
                                             getResources().getDisplayMetrics());
//Loading image from URL by using Picasso.        
Picasso.with(getApplicationContext())
       .load(imageURL)
       .placeholder(R.drawable.card_loading)
       .fit()
       .centerCrop()
       .into(imageView);
imageView.setAdjustViewBounds(true);
//Created Constraint Set.
ConstraintSet set = new ConstraintSet();
set.clone(constraintLayout);      
set.constrainWidth(imageView.getId(), ConstraintSet.MATCH_CONSTRAINT);
set.connect(imageView.getId(), ConstraintSet.TOP, eventsViewPager.getId(), ConstraintSet.BOTTOM, margin);
set.connect(imageView.getId(), ConstraintSet.LEFT, ConstraintSet.PARENT_ID, ConstraintSet.LEFT, margin);
set.connect(imageView.getId(), ConstraintSet.RIGHT, ConstraintSet.PARENT_ID, ConstraintSet.RIGHT, margin); 

现在的问题是它从顶部创建余量,但是从左右添加任何保证金。

尝试使用ConstraintSet.STARTConstraintSet.END而不是ConstraintSet.LEFTConstraintSet.RIGHT。这应该解决您的问题。

相关内容

  • 没有找到相关文章

最新更新