关于Android中context和log的用法

1、context
Android在new控件的时候,有时候会用this(ClassName.this),有时候会用getContext(),有时候又会见到context,或者getApplicationContext(),那他们有什么区别吗?

TextView textView = new TextView(this);

TextView textView = new TextView(MainActivity.this);//和第一种属于同一类型

TextView textView = new TextView(getContext());

TextView textView = new TextView(context);

TextView textView = new TextView(getApplicationContext());

context可以理解为场景,就是new的这个控件是属于哪个场景的。例如3楼有很多房间,301,302,303…,如果当前控件的context是303房间,那么该控件的场景就是303房间,也就是该控件属于303,与303房间共存亡。对于上面额度四种类型,可以这么理解与使用:

  1. this(ClassName.this)要在Context的子类中,常见的就是在Activity类中使用,表示此控件是属于该Activity的
  2. getContext()表示获取控件所在的context
  3. context,这种使用方法一般是从别的地方将context传过来,然后new的这个控件就是属于这个context了
  4. getApplicationContext()获取到的是当前Application所在的context,并且要在AndroidManifest中唯一指定,在当前Application的任意位置使用这个方法得到的是同一个Context

2、log
log打印日志,一般有这几种类型log.v,log.d,log.i,log.w,log.e,分别表示Verbose,Debug,Info,Warn,Error,这样就能很清楚的区分每个的区别了吧,它们对应Android studio的logcat中的各项
在这里插入图片描述

  1. Log.v 这里的v代表verbose啰嗦,冗长的意思,任何消息都会输出
  2. Log.d只输出debug调试,通过“Debug”选项和tag标签来过滤
  3. Log.i一般提示性的消息information,它不会输出Log.v和Log.d的信息,但会显示Log.i、Log.w和Log.e的信息
  4. Log.w可以看作为warning警告,建议我们注意优化Android代码,同时选择它后还会输出Log.e的信息。
  5. Log.e为error错误,这些错误就需要我们修改了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值