4

我的应用程序上有一个菜单,只能通过互联网连接打开,我尝试放置一些源代码,但它不起作用......谁能帮助我......?这是我的源代码:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    String[] listpeta = new String[] { "TMII","Anjungan", "Museum", "Tempat Ibadah","Taman","Wahana Rekreasi"};
    //Menset nilai array ke dalam list adapater sehingga data pada array akan dimunculkan dalam list
    this.setListAdapter(new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, listpeta));
}

@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
    super.onListItemClick(l, v, position, id);
    //Menangkap nilai text yang dklik
    Object o = this.getListAdapter().getItem(position);
    final String keyword = o.toString();
    //Menampilkan list peta.


        final ProgressDialog myProgressDialog = ProgressDialog.show(ListPeta.this, "Loading", "Mohon Tunggu...!!!", true);
        new Thread() { 
              public void run() { 
                   try{
                       Thread.sleep(1000); 
                       if(keyword=="TMII"){petapa="tmii";}
                       else if(keyword=="Anjungan"){petapa="anjungan";}
                       else if(keyword=="Museum"){petapa="museum";} 
                       else if(keyword=="Tempat Ibadah"){petapa="tempatibadah";}
                       else if(keyword=="Taman"){petapa="taman";}
                       else if(keyword=="Wahana Rekreasi"){petapa="rekreasi";}

                       Intent slide2 = new Intent(ListPeta.this, FormPetaTmiiOnline.class);
                       startActivity(slide2);
                   } catch (Exception e) {  } 
                   // Dismiss the Dialog
                   myProgressDialog.dismiss(); 
              } 
         }.start();

}

如果有人帮助我并给我一个源代码..告诉我我必须把它放在我的源代码的哪里...... :)

4

2 回答 2

1

使用此代码检查连接性:

final ConnectivityManager conMgr =  (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
final NetworkInfo activeNetwork = conMgr.getActiveNetworkInfo();
if (activeNetwork != null && activeNetwork.isConnected()) {
    //being here means you are connected
} else {
    //being here means you are not connected
} 

并将其包含在您的清单中:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>

因此,您可以根据连接性将布尔值设置为 true 或 false,并使用它来确定是否应该打开菜单。

于 2012-07-30T00:23:02.027 回答
0

试试这个代码来检查internet connection.

public boolean isOnline() {
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = cm.getActiveNetworkInfo();
    if (netInfo != null && netInfo.isConnectedOrConnecting()) {
        return true;
    }
             // your code here(Toast)
    return false;

}

并将其包含permission在您的清单中:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>

并在setContentView.

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    isOnline();
    setContentView(R.layout.main);
于 2012-07-30T03:57:10.860 回答