Android 当设备处于网络关闭和打开状态时,如何在应用程序中显示文本消息 公共类MainActivity扩展了ActionBarActivity{ 文本视图连接检查文本框; @凌驾 创建时受保护的void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); connectionchecktextbox=(TextView)findViewById(R.id.connectionchecktextbox); if(Utils.isNetworkAvailable(MainActivity.this)){ connectionchecktextbox.setVisibility(View.GONE); } 否则{ 连接检查文本框 .setText(“如果关闭,则似乎是Internet连接”); } } }

Android 当设备处于网络关闭和打开状态时,如何在应用程序中显示文本消息 公共类MainActivity扩展了ActionBarActivity{ 文本视图连接检查文本框; @凌驾 创建时受保护的void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); connectionchecktextbox=(TextView)findViewById(R.id.connectionchecktextbox); if(Utils.isNetworkAvailable(MainActivity.this)){ connectionchecktextbox.setVisibility(View.GONE); } 否则{ 连接检查文本框 .setText(“如果关闭,则似乎是Internet连接”); } } },android,Android,这里是Xml 使用此代码,我可以在设备关闭和打开互联网时显示文字信息,但在我们打开应用程序时显示:意味着我们必须调用始终打开创建来显示此信息我希望自动文字信息应在应用程序打开时显示,然后文字信息应消失,关闭时则自动显示文字信息请告诉我我如何应用这个我想你应该用吐司来做 下面是如何使用它 public class MainActivity extends ActionBarActivity { TextView connectionchecktextbox; @Override

这里是Xml


使用此代码,我可以在设备关闭和打开互联网时显示文字信息,但在我们打开应用程序时显示:意味着我们必须调用始终打开创建来显示此信息我希望自动文字信息应在应用程序打开时显示,然后文字信息应消失,关闭时则自动显示文字信息请告诉我我如何应用这个

我想你应该用吐司来做

下面是如何使用它

public class MainActivity extends ActionBarActivity {
    TextView connectionchecktextbox;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        connectionchecktextbox = (TextView) findViewById(R.id.connectionchecktextbox);

        if (Utils.isNetworkAvailable(MainActivity.this)) {

            connectionchecktextbox.setVisibility(View.GONE);
        }

        else {

            connectionchecktextbox
                    .setText("It Seems Internet Connection if off");
        }

    }

}


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.popupdisplay.MainActivity$PlaceholderFragment" >

    <TextView
        android:id="@+id/connectionchecktextbox"
        android:layout_width="fill_parent"
        android:layout_height="25dip"
        android:layout_alignParentBottom="true"
        android:background="#F40C0C"
        android:gravity="center"
        android:text="It Seems Internert Connection if off"
        android:textAlignment="gravity"
        android:textColor="#ffffff" />

</RelativeLayout>

您可以使用广播接收器来执行此操作。广播接收器将通知您任何连接更改:

Context context = getApplicationContext();
CharSequence text = "Hello toast!";
int duration = Toast.LENGTH_SHORT;

Toast toast = Toast.makeText(context, text, duration);
toast.show();
并在清单文件中注册InternetBroadcastReceiver

public class InternetBroadcastReceiver extends BroadcastReceiver 
 public static boolean iAmOnline = false;
{
@Override
public void onReceive(Context context, Intent intent) {

    if (isOnline(context)) 
            {
          iAmOnline = true;
         Toast.makeText(context, "Network Available Do operations",Toast.LENGTH_LONG).show(); 
}else{
        iAmOnline = false;
}


}
public boolean isOnline(Context context) {
        ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo netInfo = cm.getActiveNetworkInfo();
//should check null because in air plan mode it will be null
        if (netInfo != null && netInfo.isConnected()) {
            return true;
        }
        return false;
    }
}
} 


现在,您可以在应用程序的任何位置使用InternetBroadcastRectiver.iAmOnline检查internet连接:

公共类NetworkReceiver扩展了BroadcastReceiver{

<receiver android:name=".InternetBroadcastReceiver" >
    <intent-filter>
        <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
    </intent-filter>
</receiver>

试试这个简单的代码,如果有任何疑问请告诉我。

Automatic??顺便问一下,当你的应用程序不在前台时,你为什么要检查连接是否可用?请更清楚地说明你的问题。就像我关闭Internet一样,它应该在我们的应用程序中弹出,不应该重新启动,然后在暂停时检查应该显示检查这个:做谷歌..我做了它的工作,但假设我们的互联网关闭,现在我在互联网上,然后弹出窗口没有消失,我们必须再次关闭应用程序,然后重新启动它如何应用于我的活动请告诉我的意思是如何调用此功能,以便此功能应call@Departure这相当简单。只需使用静态b用于检查internet连接的oolean变量。我将编辑answer@Departure为此,您可以使用上面我的类到您的活动类的接口,如果internet连接发生更改,只需显示文本请添加编辑代码,我也想应用该代码
@Override
public void onReceive(Context context, Intent intent) {
    // TODO Auto-generated method stub

    boolean isConnected = activeNetwork != null
            && activeNetwork.isConnectedOrConnecting();

    if (isConnected == true) {

        // initChatHub();
        Toast.makeText(context, "Connected", 1000).show();


    } else {
        Toast.makeText(context, "Disconnected", 1000).show();
    }
}