Android在相对布局前面设置ImageView

问题描述 投票:1回答:2

我的Android应用程序中有一个RelativeLayout。现在我想在布局前面显示一个ImageView。问题是ImageView不在前面,它有点透明,我可以看到像EditTextButton这样的东西。我无法更改布局(setContentView),因为布局是动态创建的,在setContentView之后,控件不在。

android android-layout imageview relativelayout
2个回答
3
投票

您可以以编程方式添加视图,并以它将在顶部的方式添加!

  1. 为您的顶级布局创建ID
  2. 现在一些代码(在我的例子中是相对布局): RelativeLayout relativeLayout = (RelativeLayout)findViewById(R.id.relative_layout_id); ImageView imageView = new ImageView(context) Drawable rightArrowBlackDrawable = getResources().getDrawable(R.drawable.image); imageView.setLayoutParams(getLayoutParams()); relativeLayout.addView(imageView); imageView.bringToFront(); //here just example layout params, use yours params ;-) private RelativeLayout.LayoutParams getLayoutParams() { RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); layoutParams.addRule(RelativeLayout.CENTER_VERTICAL); return layoutParams; }

0
投票

插入后,您可以将它带到前面。

imageView.bringToFront();

如果图像是透明的,您可以设置白色背景以防止其下方的内容显示。

imageView.setBackgroundColor(0xFFFFFF);
© www.soinside.com 2019 - 2024. All rights reserved.