如何编程将ImageView放在RelativeLayout的顶部

时间:2016-12-26 11:59:40

标签: android android-layout imageview relativelayout

我正在尝试以编程方式在ImageView内设置RelativeLayout X Y 位置。

我可以设置X位置,但Y位置似乎不起作用。 ImageView几乎显示在屏幕中间。

我在stackoverflow上阅读了很多帖子并尝试了很多代码,但没有人工作。

我向您展示我的原始代码,但没有显示我的所有尝试。

ViewGroup.LayoutParams viewlp = new ViewGroup.LayoutParams(
                                ViewGroup.LayoutParams.WRAP_CONTENT,
                                ViewGroup.LayoutParams.WRAP_CONTENT);

    viewlp.height = drawableHeight;
    viewlp.width = drawableWidth;
    imageView.setX(Xposition);
    imageView.setY(Yposition);
    imageView.setLayoutParams(viewlp);



    RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(
            RelativeLayout.LayoutParams.WRAP_CONTENT, 
            RelativeLayout.LayoutParams.WRAP_CONTENT);
    lp.addRule(RelativeLayout.ALIGN_BOTTOM);

    layout.addView(imageView, lp);

在这里,您可以看到我必须放置ImageView

enter image description here

有人知道我的错误是什么吗?

2 个答案:

答案 0 :(得分:1)

lp.addRule(RelativeLayout.ALIGN_PARENT_TOP); add this line 

答案 1 :(得分:1)

以这种方式添加

RelativeLayout rl = new RelativeLayout(activity);
ImageView imgeView = new ImageView(activity);


RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams
            (LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
lp.addRule(RelativeLayout.ALIGN_PARENT_TOP);

rl.addView(imgeView, lp);