Java ImageView隐藏和显示

Java ImageView隐藏和显示,java,android,android-layout,android-imageview,Java,Android,Android Layout,Android Imageview,我正在努力让我的android应用程序以编程方式显示和隐藏imageView对象。实际上,我正在努力从imageView对象中获得预期的行为 在回答这个问题之后, 以下是我正在测试的内容: public class MapsActivity extends FragmentActivity implements OnMapReadyCallback{ @Override protected void onCreate(Bundle savedInstanceState) { Imag

我正在努力让我的android应用程序以编程方式显示和隐藏imageView对象。实际上,我正在努力从imageView对象中获得预期的行为

在回答这个问题之后,

以下是我正在测试的内容:

public class MapsActivity extends FragmentActivity implements OnMapReadyCallback{

@Override
protected void onCreate(Bundle savedInstanceState) {

    ImageView warn = (ImageView)findViewById(R.id.gpsStatusWarning);

    warn.setImageResource(R.drawable.gps_error);
    warn.getLayoutParams().height = 64;
    warn.getLayoutParams().width = 64;
}

}
上面的代码是在父活动的OnCreate方法中调用的,它完全按照我的预期执行:它将对象的图像更改为指定的图像,并设置所述对象的高度和宽度。然而,我似乎无法将对象设置为不可见或消失。事实上,我根本无法让它消失。我两个都试过了:

    warn.setVisibility(View.INVISIBLE);
    warn.setVisibility(View.GONE);
但图像仍然可见。我甚至尝试在XML中将其更改为

    android:visibility="gone"
但即使这样也无济于事。图像仍然可见

我做错了什么?我是否错过了对某个更新方法的调用?设置图像资源是否强制绘制图像?

尝试:

warn.setImageResource(0)


或者:
warn.setImageResource(android.R.color.transparent)

这是通过编程设置Android上
ImageView
对象可见性的方法:

yourImage.setVisibility(View.VISIBLE);
yourImage.setVisibility(View.INVISIBLE);
yourImage.setVisibility(View.GONE);
您还可以在XML布局文件中设置
ImageView
对象的初始状态,如下所示:

visibility="visible"
visibility="gone"
visibility="invisible"
您可以按照有关
ImageView
控件的官方文档,在下面的链接上亲自试用

imageView.setVisibility(View.GONE);
设置可见性(View.VISIBLE)

你应该发布更多的相关代码。这将有助于人们了解全局。你好,伊塞克先生。回答前请先阅读问题。谢谢:)我用两种方式回复你,我通常是如何设置可见性和文档链接的。希望它能帮助您了解为什么您的代码一开始就不起作用。干杯谢谢你的回应,这两个都奏效了!但我可能更感兴趣的是发现为什么可见性设置不起作用。