Java 如何检查ViewGroup片段中的网络连接?
因此,我只是想检查我的网络连接,并执行执行,如果它是真的或假。我知道在一个片段中,您可以在获取系统服务之前使用getactivity,但是这对我不起作用?谢谢你的帮助:)Java 如何检查ViewGroup片段中的网络连接?,java,android,android-fragments,fragment,Java,Android,Android Fragments,Fragment,因此,我只是想检查我的网络连接,并执行执行,如果它是真的或假。我知道在一个片段中,您可以在获取系统服务之前使用getactivity,但是这对我不起作用?谢谢你的帮助:) 在ViewGroup内部,可以使用getContext()方法获取系统服务 ConnectivityManager connectivityManager =(ConnectivityManager)getContext().getSystemService(Context.CONNECTIVITY_SERVICE); 您
在ViewGroup内部,可以使用getContext()方法获取系统服务
ConnectivityManager connectivityManager =(ConnectivityManager)getContext().getSystemService(Context.CONNECTIVITY_SERVICE);
您可以在自定义视图/视图组的所有构造函数中添加init()函数,如下所示:
public class CustomView extends Button {
public CustomView(Context context) {
super(context);
init();
}
public CustomView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public CustomView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init();
}
public CustomView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
init();
}
private void init() {
ConnectivityManager connectivityManager = (ConnectivityManager) getContext().getSystemService(Context.CONNECTIVITY_SERVICE);
// Other stuffs
}
}
public class AppUtil{
public static boolean isNetworkConnectionAvailable(Context ctx, boolean showDialog){
ConnectivityManager manager =(ConnectivityManager)ctx.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = manager.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting();
if(!isConnected&&showDialog){
AppUtil.showSimpleDialog(ctx, ctx.getString(R.string.network_not_available),
ctx.getString(R.string.internet_not_available));
}
return isConnected;
}
}
public class Fragment1 extends Fragment implements View.OnClickListener {
TextView textView;
if (AppUtil.isNetworkConnectionAvailable(this, true)){
textView.setVisibility(View.INVISIBLE);
}
else{
Byron.setEnabled(false);
Lennox.setEnabled(false);
Skenners.setEnabled(false);
Ballina.setEnabled(false);
}
}
在项目AppUtil中创建一个单独的类,如下所示:
public class CustomView extends Button {
public CustomView(Context context) {
super(context);
init();
}
public CustomView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public CustomView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init();
}
public CustomView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
init();
}
private void init() {
ConnectivityManager connectivityManager = (ConnectivityManager) getContext().getSystemService(Context.CONNECTIVITY_SERVICE);
// Other stuffs
}
}
public class AppUtil{
public static boolean isNetworkConnectionAvailable(Context ctx, boolean showDialog){
ConnectivityManager manager =(ConnectivityManager)ctx.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = manager.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting();
if(!isConnected&&showDialog){
AppUtil.showSimpleDialog(ctx, ctx.getString(R.string.network_not_available),
ctx.getString(R.string.internet_not_available));
}
return isConnected;
}
}
public class Fragment1 extends Fragment implements View.OnClickListener {
TextView textView;
if (AppUtil.isNetworkConnectionAvailable(this, true)){
textView.setVisibility(View.INVISIBLE);
}
else{
Byron.setEnabled(false);
Lennox.setEnabled(false);
Skenners.setEnabled(false);
Ballina.setEnabled(false);
}
}
要检查网络连接,请执行以下操作:
public class CustomView extends Button {
public CustomView(Context context) {
super(context);
init();
}
public CustomView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public CustomView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
init();
}
public CustomView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
init();
}
private void init() {
ConnectivityManager connectivityManager = (ConnectivityManager) getContext().getSystemService(Context.CONNECTIVITY_SERVICE);
// Other stuffs
}
}
public class AppUtil{
public static boolean isNetworkConnectionAvailable(Context ctx, boolean showDialog){
ConnectivityManager manager =(ConnectivityManager)ctx.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = manager.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting();
if(!isConnected&&showDialog){
AppUtil.showSimpleDialog(ctx, ctx.getString(R.string.network_not_available),
ctx.getString(R.string.internet_not_available));
}
return isConnected;
}
}
public class Fragment1 extends Fragment implements View.OnClickListener {
TextView textView;
if (AppUtil.isNetworkConnectionAvailable(this, true)){
textView.setVisibility(View.INVISIBLE);
}
else{
Byron.setEnabled(false);
Lennox.setEnabled(false);
Skenners.setEnabled(false);
Ballina.setEnabled(false);
}
}