有人能注意到我的此代码中有什么不正确吗?作为一个完整的Android新手,我试图仅在没有连接的情况下使用ImageView来显示消息和图像(“ tryagainimage.png”)。否则,我将继续使用WebView,在这种情况下将不显示消息和图像。
这就是我试图这样做的方式:
在我的MainActivity.java中,有以下部分:...
private ImageView myImgView;
...
if (!DetectConnection.checkInternetConnection(this)) {
Toast.makeText(getApplicationContext(), "No connection.", Toast.LENGTH_SHORT).show();
ImageView myImgView = (ImageView) findViewById(R.id.imageViewTryAgainImage);
mImgView.setImageResource(R.drawable.tryagainimage);
}
else {
myWebView = (WebView) findViewById(R.id.activity_main_webview);
...
这是activity_main.xml中的部分:
...
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageViewTryAgainImage"
android:src="@drawable/tryagainimage"
android:visibility="visible"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true" />
...
发生的情况是,如果没有连接,则会显示Toast消息,并显示图像。有了连接,Toast消息不会出现,但是图像仍然显示。总之,无论如何,图像“ tryagainimage”总是出现。另一方面,Toast消息仅在需要时显示。
谁能注意到我在代码中有什么错误?谢谢!
最佳答案
android:visibility="visible"
不应一开始就将其隐藏,并在确定没有连接后才将其设置为可见?