一、Activity判断网络是否连通:

首先创建一个Andorid Project项目,然后添加一个on1类,Layout一个button控件和Textview控件。

values有一个Color.xml文件和string.xml文件(注:Color.xml文件可以网上找)

Color.xml文件:

string.xml文件:

MainActivity.java文件:

通过findViewById获取R资源文件中的控件,并且通过setOnClickListener方法将on1加入监听管理。

private Button btn1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1=(Button) this.findViewById(R.id.button1);
btn1.setOnClickListener(new on1(this));
}

on1.java文件:

1、on1类实现监听接口,调用onClick方法,实现点击按钮进入该方法进行相关的操作。定义一个上下文对象Context变量和TextView变量,还有ConnextivityManager 变量(ConnectivityManager主要管理和网络连接相关的操作),定义一个接受数据的函数。

2、通过将上下文对象进行强转为Activity,获取R文件资源,在OnClick方法中第定义一个String变量和int变量,两个变量用于Textview显示的文本和背景颜色。

3、通过Activity的getResources().getString(R.string.test2)方法 获取values文件下string.xml文件string标签 name属性值为test2的文本值(网络正常),通过Activity的getResources().getColor(R.color.blue)方法设置背景颜色。(注:可以通过和获取文本值一样获取Color.xml文件的颜色)。

public class on1 implements OnClickListener {

    private Context context;
private TextView txt;
private ConnectivityManager cn;
public on1(Context u)
{
this.context=u;
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Activity act=(Activity)context;
txt=(TextView) act.findViewById(R.id.textView1);
String text;
int col; cn = (ConnectivityManager) act.getSystemService(act.CONNECTIVITY_SERVICE);
NetworkInfo t=cn.getActiveNetworkInfo();
if(t!=null)
{
text=act.getResources().getString(R.string.test2);
col=act.getResources().getColor(R.color.blue);
}else
{
text=act.getResources().getString(R.string.test1);
col=act.getResources().getColor(R.color.red);
}
txt.setText(text);
txt.setBackgroundColor(col);
}

4、是否连接网络? 通过Activity的getSystemService(act.CONNECTIVITY_SERVICE)获得网络连接管理器对象,通过ConnectivityManager的getActiveNetworkInfo方法,获取网络连接管理器对象获得网络连接状态,如果没连接返回null。通过ConnectivityManager返回的对象判断是否连接网络并进行相关的操作。

5、获取网络权限:

点击 AndroidManifest.xml文件

点击Add添加

Name下拉框选中选中android.permission.ACCESS_NETWORK_STATE",在创建一个Add下拉框选中android.permission.INTERNET。

查看AndroidMandifest.xml文件添加了两个uses-permission标签。

效果图:

有网:

没网:

getSystemService知识点:

在Android后台运行着很多service,他们在系统启动是通过SystemService开启,支持系统的正常工作,也帮助我们更好的实现各种功能。
getSystemService是activity的一个方法,通过context进行调用,通过不同的服务名获得相应的服务对象,再根据获得的对象调用所需要的方法一下是一些服务的名称以及返回对象
 
                    传入的Name               |               返回的对象                  |             说明

WINDOW_SERVICE                      WindowManager                    管理打开的窗口程序

LAYOUT_INFLATER_SERVICE             LayoutInflater                   取得xml里定义的view

ACTIVITY_SERVICE                    ActivityManager                  管理应用程序的系统状态

POWER_SERVICE                       PowerManger                      电源的服务

ALARM_SERVICE                       AlarmManager                     闹钟的服务

NOTIFICATION_SERVICE                NotificationManager              状态栏的服务

KEYGUARD_SERVICE                    KeyguardManager                  键盘锁的服务

LOCATION_SERVICE                    LocationManager                  位置的服务,如GPS

SEARCH_SERVICE                      SearchManager                    搜索的服务

VEBRATOR_SERVICE                    Vebrator                         手机震动的服务

CONNECTIVITY_SERVICE                Connectivity                     网络连接的服务

WIFI_SERVICE                        WifiManager                      Wi-Fi服务

TELEPHONY_SERVICE                   TeleponyManager                  电话服务

1、ActivityManager am = (ActivityManager) this

List l = am.getRunningAppProcesses();//获取当前运行程序的信息

2、LayoutInflater inflater = (LayoutInflater) context
    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);获得布局管理器对象
 
convertView = inflater.inflate(R.layout.item_appoint_list_1, null);//这个应该不用多说,getView中一直用的。

Android开发之Activity(cho1)篇的更多相关文章

  1. Android开发之Activity的创建跳转及传值

    在Android系统的江湖中有四大组件:活动(Activity), 服务(Service), 广播接收器(Broadcast Reciver)和内容提供者(Content Provider).今天所介 ...

  2. Android开发之Activity转场动画

    引子 相信开发过iOS的程序员都知道iOS ViewController之间的跳转动画非常多,很酷对不对?这让开发Android的羡慕不已,曾几何时,Android中的Activity跳转是何等的生硬 ...

  3. Android开发之Activity生命周期篇

    一.Activity: 1.Activity:Activity是一个与用记交互的系统模块,几乎所有的Activity都是和用户进行交互的. 2.在Android中Activity主要是用来做控制的,它 ...

  4. Android开发之Activity的生命周期以及加载模式

    本篇博客就来好好的搞一下Activity的生命周期,如果搞过iOS的小伙伴的话,Activity的生命周期和iOS中ViewController的生命周期非常类似.生命周期,并不难理解.一个人的生命周 ...

  5. Android开发之Activity横竖屏切换生命周期重建问题

    当进行横竖屏切换的时候Activity的生命周期会重建,从而导致Activity崩溃等问题,为了避免这一问题,需要在AndroidManifest.xml文件中设置: <activity and ...

  6. Android开发之Activity

    活动(Activity) 活动是最容易吸引用户的地方,它是一种可以包含用户界面的组件,主要用于和用户交互. FirstActivity 手动创建活动 新建一个project,不再选择empty act ...

  7. Android开发之Is Library篇

    一.生活场景描述 由于公司有一个项目开发的时间比较长,项目里堆砌的代码也比较多,并且有些功能在给不同客户发布的时候有些功能还不需要,这样功能模块分离就很有必要了. 所以,Library就被推到了前台, ...

  8. Android开发之Activity(活动)

    在安卓中,Activity(活动)就是一个包含应用程序的用户界面的窗口.一个应用程序可以包含一个或多个Activity. 一般一个活动对应一个UI文件,即xml文件.创建活动一般是基础Activity ...

  9. Android开发之adb,$Sqlite篇

    一. 操作系统: 1. linux操作系统: linux操作系统其实就是Linux内核,Linux内核[kernel]是整个操作系统的最底层,它负责整个硬件的驱动,以及提供各种系统所需的核心功能,包括 ...

随机推荐

  1. Python数据结构——栈的列表实现

    用Python内置的列表(list)实现栈,代码如下: import os os.chdir("E:\\Python_temp") class Stack: def __init_ ...

  2. spring管理

    spring管理 SqlMapConfig.xml: <?xml version="1.0" encoding="UTF-8"?> <bean ...

  3. C++学习(十一)(C语言部分)之 练习

    /* 1.if 输入一个成绩 进行分级 输入一个数字 判断是否是水仙花数 比如 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 2.switch 提示 先对数字做处理 ...

  4. itcast-spring

    黑马2014  spring后期 ssh整合后期  讲解不清楚 源码讲解太多   spring重新开始  itcast2016版本 介绍 Spring搭建 约束引入注意事项 导入至eclipse:wi ...

  5. day1 python学习

    Python的分类 编译型:一次性,将全部程序编译成二进制文件,然后再运行. 有点:执行效率高 缺点:开发效率低,不能跨平台使用. 解释型:当你程序运行时,一行一行的解释,并运行 优点:开发效率高,可 ...

  6. Benthos metrcis 说明

    Benthos 按照input, pipeline ,buffer,conditions,ouput 这个几个大类,为我们提供了 方便的分析metrics,支持json 格式同时可以暴露为 stats ...

  7. 普林斯顿数学指南(第三卷) (Timothy Gowers 著)

    第V部分 定理与问题 V.1 ABC猜想 V.2 阿蒂亚-辛格指标定理 V.3 巴拿赫-塔尔斯基悖论 V.4 Birch-Swinnerton-Dyer 猜想 V.5 卡尔松定理 V.6 中心极限定理 ...

  8. python, 用filter实现素数

    # _*_ coding:utf-8 _*_ #step1: 生成一个序列def _odd_iter(): n = 1 while True: n = n + 1 yield n #Step2: 定义 ...

  9. 20165308 2017-2018-2 《Java程序设计》第三周学习总结

    20165308 2017-2018-2 <Java程序设计>第三周学习总结 知识点 类 构造方法与对象的创建 类与程序的基本结构 参数传值 对象的组合 实力成员与类成员 方法重载 thi ...

  10. 配置zabbix当内存剩余不足15%的时候触发报警

    zabbix默认的剩余内存报警:Average Lack of available memory on server {HOST.NAME}{Template OS Linux:vm.memory.s ...