我如何才能显示没有互联网连接消息,如在Facebook应用程序,出现在选项卡视图下。
最佳答案
您可以在XML文件中对此进行设计,然后将其可见性设置为“不可见”,如下所示:
<RelativeLayout
android:id="@+id/relativelayout_connection"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:alpha="0.8"
android:background="@android:color/black" >
<TextView
android:id="@+id/textView_noInternetConnection"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_centerInParent="true"
android:text="No Internet Connection."
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@android:color/white" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/textView_noInternetConnection"
android:layout_alignParentTop="true"
android:layout_toLeftOf="@+id/textView_noInternetConnection"
android:src="@drawable/warrning" />
</RelativeLayout>
在代码中使用如下广播接收器:
private BroadcastReceiver mConnReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
boolean noConnectivity = intent.getBooleanExtra(
ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
/*String reason = intent
.getStringExtra(ConnectivityManager.EXTRA_REASON);*/
boolean isFailover = intent.getBooleanExtra(
ConnectivityManager.EXTRA_IS_FAILOVER, false);
@SuppressWarnings("deprecation")
NetworkInfo currentNetworkInfo = (NetworkInfo) intent
.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
// NetworkInfo otherNetworkInfo = (NetworkInfo)
// intent.getParcelableExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO);
if (noConnectivity){
if(mRelativeLayout != null)
mRelativeLayout.setVisibility(View.VISIBLE);
}
else if (currentNetworkInfo.isConnected()) {
mRelativeLayout.setVisibility(View.GONE);
} else if (isFailover) {
Toast.makeText(getApplicationContext(), "Failover",
Toast.LENGTH_LONG).show();
} else {
mRelativeLayout.setVisibility(View.GONE);
}
}
};
关于android - Facebook应用程序类型没有互联网连接消息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17647465/