Android ImageView不可见';在setVisibility()之后不可见
我通过Android ImageView不可见';在setVisibility()之后不可见,android,imageview,visibility,findviewbyid,Android,Imageview,Visibility,Findviewbyid,我通过findViewById()加载onCreate()和ImageView。ImageView从XML设置为不可见,通过调用mImage.setVisibility(View.visible),它应该在onStart()中可见 奇怪的是,可见性没有改变,而如果我从XML设置为GONE,可见性实际上会改变 有什么我遗漏的吗 编辑: 守则: private class MyClass extends Activity { ... private ImageView mImage; ... @
findViewById()
加载onCreate()
和ImageView。ImageView从XML设置为不可见,通过调用mImage.setVisibility(View.visible)
,它应该在onStart()
中可见
奇怪的是,可见性没有改变,而如果我从XML设置为GONE,可见性实际上会改变
有什么我遗漏的吗
编辑:
守则:
private class MyClass extends Activity {
...
private ImageView mImage;
...
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mImage = (ImageView)findViewById(R.id.imageViewCompass);
......
}
@Override
protected void onStart() {
super.onStart();
mImage.setVisibility(View.VISIBLE);
}
}
和从XML:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeBus"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/imageViewCompass"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/mwImage"
android:visibility="invisible" />
</RelativeLayout>
第一件事是为什么要将活动类声明为私有类。只允许公开、抽象和最终。其次,我复制并粘贴了您提供的确切代码,创建了一个新的android应用程序项目,效果很好。
你能把完整的.xml文件发出去吗 对不起,但我意识到我自己不够清楚。我正在使用OpenGL SurfaceView,我不会相信它会对其他视图造成干扰。。似乎
setVisibility()
方法在处理SurfaceView上方的图层时,从View.INVISIBLE开始出现了一些问题
在这里,我找到了答案:
你能发布你的代码吗?我刚刚发布了……顺便说一句,这是非常标准的代码……我试图复制你的代码,但不可见和消失了,图像出现了。你有没有尝试过清理和构建你的代码,也许是有别的东西在妨碍你。我尝试过构建项目并删除R类…没有任何变化。这是一个错误。该类是公共的(C:)完整xml Posted为什么要声明relativelayout宽度和高度?请删除它,然后重试。因为有另一个布局作为父布局。移除宽度和高度是一样的。那么其他东西就有问题了。要验证这一点,请尝试创建一个新的Android应用程序项目,复制并粘贴您提供的上述代码,然后运行它。上面的代码在我这方面工作得很好。