概述

在Acitivty中setContentView()用来设置布局文件,那么布局文件是怎样添加进窗口的呢?本文从源码入手进行解析。

源码解析

源码开始Acitivty中setContentView()

这个不用解释
进入setContentView方法

@Overridepublic void setContentView(@LayoutRes int layoutResID) {    getDelegate().setContentView(layoutResID);}

使用AppCompatActivity时的源码,点击查看Android AppCompat 库详解
来看getDelegate()方法

private AppCompatDelegate mDelegate;/** * @return The {@link AppCompatDelegate} being used by this Activity. */@NonNullpublic AppCompatDelegate getDelegate() {    if (mDelegate == null) {        mDelegate = AppCompatDelegate.create(this, this);    }    return mDelegate;}

如果mDelegate不存在就通过AppCompatDelegate.create(this, this);创建一个,而AppCompatDelegate 是什么呢?

AppCompatDelegateAppCompatActivity的实现,并且兼容Activity

更多相关文章

  1. 一款常用的 Squid 日志分析工具
  2. GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
  3. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  4. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
  5. Mac中用命令行启动AVD模拟器
  6. android开发必备的一些网址
  7. Android(安卓)从sd卡读取XML文件并解析
  8. Android-REC制作[从入门到精通]
  9. android ViewPager,ViewFlipper,ViewFlow实现左右滑动

随机推荐

  1. 思考一下!!!!my android
  2. Android(安卓)一些常用的依赖及使用
  3. Android源码环境下编译自带JNI的APP
  4. %1$s %1$d Android(安卓)string
  5. 零基础Android(安卓)Studio 入门爬坑记
  6. Android(安卓)adb的权限问题(可以不通过ad
  7. android权限列表
  8. android下载系统版本步骤(通过SecureCRT)
  9. Android(安卓)WebView 软键盘遮挡输入框
  10. android 画图------类似跑马灯的效果