Android开发之Activity(cho1)篇
一、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知识点:
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();//获取当前运行程序的信息
Android开发之Activity(cho1)篇的更多相关文章
- Android开发之Activity的创建跳转及传值
在Android系统的江湖中有四大组件:活动(Activity), 服务(Service), 广播接收器(Broadcast Reciver)和内容提供者(Content Provider).今天所介 ...
- Android开发之Activity转场动画
引子 相信开发过iOS的程序员都知道iOS ViewController之间的跳转动画非常多,很酷对不对?这让开发Android的羡慕不已,曾几何时,Android中的Activity跳转是何等的生硬 ...
- Android开发之Activity生命周期篇
一.Activity: 1.Activity:Activity是一个与用记交互的系统模块,几乎所有的Activity都是和用户进行交互的. 2.在Android中Activity主要是用来做控制的,它 ...
- Android开发之Activity的生命周期以及加载模式
本篇博客就来好好的搞一下Activity的生命周期,如果搞过iOS的小伙伴的话,Activity的生命周期和iOS中ViewController的生命周期非常类似.生命周期,并不难理解.一个人的生命周 ...
- Android开发之Activity横竖屏切换生命周期重建问题
当进行横竖屏切换的时候Activity的生命周期会重建,从而导致Activity崩溃等问题,为了避免这一问题,需要在AndroidManifest.xml文件中设置: <activity and ...
- Android开发之Activity
活动(Activity) 活动是最容易吸引用户的地方,它是一种可以包含用户界面的组件,主要用于和用户交互. FirstActivity 手动创建活动 新建一个project,不再选择empty act ...
- Android开发之Is Library篇
一.生活场景描述 由于公司有一个项目开发的时间比较长,项目里堆砌的代码也比较多,并且有些功能在给不同客户发布的时候有些功能还不需要,这样功能模块分离就很有必要了. 所以,Library就被推到了前台, ...
- Android开发之Activity(活动)
在安卓中,Activity(活动)就是一个包含应用程序的用户界面的窗口.一个应用程序可以包含一个或多个Activity. 一般一个活动对应一个UI文件,即xml文件.创建活动一般是基础Activity ...
- Android开发之adb,$Sqlite篇
一. 操作系统: 1. linux操作系统: linux操作系统其实就是Linux内核,Linux内核[kernel]是整个操作系统的最底层,它负责整个硬件的驱动,以及提供各种系统所需的核心功能,包括 ...
随机推荐
- sudo: sorry, you must have a tty to run sudo
使用ssh进行无密访问,并发送执行命令的时候遇到了如题的错误 执行命令ssh user@host "sudo rm /data/test,txt" sudo: sorry, you ...
- transition的用法以及animation的用法
http://www.cnblogs.com/xiaohuochai/p/5347930.html transiton: 过渡属性 过渡所需要时间 过渡动画函数 过渡延迟时间: 触发过渡 单纯的代码不 ...
- poj-3666 【对dp子状态无后效性的理解】
题目链接 错解: #include <cstdio> #include <cstring> #include <algorithm> #include <io ...
- 网页筛选Automatic Input Enrichment - FLAIR
http://www.cs.rochester.edu/~tetreaul/Presentations-and-Posters/0504.pdf 介绍了一个在线平台https://eflnotes.w ...
- No setter found for property 'cronExpression' in class 'org.springframework.scheduling.quartz.CronTriggerBean'
今天想写个Spring集成Quartz的小Demo,结果报错cronExpression未定义,通过差错,原来是因为Spring 3.0.5与Quartz2.2.2不兼容,Spring3.1以下的只能 ...
- MVC分别代表的含义
MVC 是一种将应用程序的逻辑层和表现层进行分离的方法.ThinkPHP 也是基于MVC设计模式的.MVC只是一个抽象的概念,并没有特别明确的规定,ThinkPHP中的MVC分层大致体现在:模型(M) ...
- 实验吧—Web——WP之 貌似有点难
其实这道题并不难,只要会看一点PHP语句,会用BP抓包,改包就好了 打开解题链接: 提示有:PHP代码审计,并且有一个:View the source code 的按钮 我们点击打开 打开后发现是一段 ...
- whmcs语言汉化路径
前台语言访问文件夹/lang,后台语言文件放入/admin/lang
- ionic后台返回的数据是html模板的时候,解析html文件的方法:
1.后台返回来的数据格式是: { "state":"100", "data":[ {"Content": "\ ...
- CH4901 关押罪犯
题意 4901 关押罪犯 0x49「数据结构进阶」练习 描述 S 城现有两座监狱,一共关押着N 名罪犯,编号分别为1~N.他们之间的关系自然也极不和谐.很多罪犯之间甚至积怨已久,如果客观条件具备则随时 ...