3
내 문제는 : 인터넷 연결이 없을 때 내 응용 프로그램이 단추 또는 전체 활동을 차단하고 인터넷 연결이 다시있을 때 해당 응용 프로그램의 차단을 해제하고 싶습니다. 나는 주요 활동, 인터넷을 확인하기 위해 브로드 캐스트 리시버를 사용하고 있는데 잘 작동 :(BroadcastReceiver 사용)
public class MainActivity extends BroadCast {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.registerReceiver(this.mConnReceiver, new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
}
// code
}
가 false로 설정 방법 setCancelable와 나는해서 ProgressDialog를 사용하고 MainActivity를 차단하려면. 방송 활동 :
public class BroadCast extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
}
public BroadcastReceiver mConnReceiver = new BroadcastReceiver()
{
public void onReceive(Context context, Intent intent)
{
@SuppressWarnings("deprecation")
NetworkInfo currentNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
if(currentNetworkInfo.isConnected()) {
BlockActivity(true);
}
else {
BlockActivity(false);
}
}
};
public void BlockActivity(Boolean connected)
{
final ProgressDialog pausingDialog = ProgressDialog.show(this, "", "Application waiting for internet connection...");
if (!connected)
{
Toast.makeText(getApplicationContext(), "Disconnected", Toast.LENGTH_LONG).show();
pausingDialog.show();
pausingDialog.setCancelable(false);
}
else
{
Toast.makeText(getApplicationContext(), "Connected", Toast.LENGTH_LONG).show();
pausingDialog.setCancelable(true);
pausingDialog.dismiss();
}
}
}
토스트 정보는 잘 작동하지만 문제는해서 ProgressDialog와 함께입니다. 인터넷 연결이 끊어졌을 때 나타나지만 인터넷 연결이 끝나면 사라지지 않습니다. 그것을 고치는 방법? 감사.
작동합니다! 고마워요 :) – namakemono
@ user2129253 환영합니다 :-) 문제가 해결되었으므로 [녹색으로 바뀌기 때문에 빈 체크 표시를 클릭하십시오] (http://meta.stackexchange.com/a/5235/) 202881). –