`
chenhaodejia
  • 浏览: 114637 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

LayoutInflater.from(this)的用法

阅读更多
通俗的说,inflate就相当于将一个xml中定义的布局找出来.
因为在一个Activity里如果直接用findViewById()的话,对应的是setConentView()的那个layout里的组件.

因此如果你的Activity里如果用到别的layout,比如对话框上的layout,你还要设置对话框上的layout里的组件(像图片ImageView,文字TextView)上的内容,你就必须用inflate()先将对话框上的layout找出来,然后再用这个layout对象去找到它上面的组件,如:
View view = View.inflate(this, R.layout.dialog_layout, null);
TextView dialogTV = (TextView) view.findViewById(R.id.dialog_tv);
dialogTV.setText("abcd");

如果组件R.id.dialog_tv是对话框上的组件,而你直接用this.findViewById(R.id.dialog_tv)肯定会报错.

分享到:
评论

相关推荐

    Android LayoutInflater.Factory主题切换

    LayoutInflater inflater = LayoutInflater.from(this); inflater.setFactory(new ThemeChangerFactory()); ``` 3. **主题切换逻辑**:实现主题切换的逻辑,可以是点击按钮、切换日夜模式等。当用户触发切换主题...

    Android 中LayoutInflater的使用

    2. **使用方法**:通过`LayoutInflater.from(Context)`获取LayoutInflater实例,然后调用`inflate()`方法加载布局。 3. **inflate()方法**:接受两个参数,第一个是XML布局资源ID,第二个是父视图,用于确定布局的...

    android中LayoutInflater的使用.pdf

    这两种方法在本质上是相同的,因为`LayoutInflater.from(Context context)`实际上就是调用了`getSystemService()`,并传入`Context.LAYOUT_INFLATER_SERVICE`作为参数来获取`LayoutInflater`服务。 `...

    Android 中级应用 一 LayoutInflater 的使用

    最常见的方式是从`Context`中通过`getSystemService()`方法获取,如`LayoutInflater.from(this)`,这里的`this`通常代表一个`Activity`或`Fragment`。 2. **加载布局**:有了`LayoutInflater`实例后,我们可以通过`...

    LayoutInflater的使用

    LayoutInflater 的使用方法有三种: 1. 由 LayoutInflater 的静态函数:from(Context context) 获取: ```java LayoutInflater inflater = LayoutInflater.from(this); View view = inflater.inflate(R.layout.ID,...

    Android LayoutInflater加载布局详解及实例代码

    由于LayoutInflater是一个抽象类,不能直接实例化,因此我们需要通过`LayoutInflater.from(Context context)`静态方法来获取一个实例。这个方法会从Context中获取名为`LAYOUT_INFLATER_SERVICE`的服务。在Android...

    PageAndPullToRefresh-分页加载和下拉刷新,几行代码完全搞定.zip

    介绍:分页加载和下拉刷新,几行代码完全搞定项目地址:https://github.com/tubeber/PageAndPullToRefresh运行效果:使用说明:本项目封装了分页请求和下拉刷新的全部过程,开发者只需要关注ListView子项...使用方法同2

    LayoutInflater inflate例子

    LayoutInflater inflater = LayoutInflater.from(this); ``` `inflate()` 方法的主要任务是将XML布局文件解析为View对象。它有两个常用重载版本: 1. `inflate(int resource, ViewGroup root)`:这个版本会将布局...

    关于Android开发的一些笔记

    以下是`LayoutInflater`的详细解释及其使用方法。 1. **`LayoutInflater`的作用**: - `LayoutInflater`的主要功能是将XML布局文件转换为Android运行时可以操作的视图对象。这使得开发者可以在程序运行时动态地...

    一个Activity根据不同的状态加载不同的布局

    View newView = LayoutInflater.from(this).inflate(R.layout.new_layout, currentView, true); ``` 2. **使用FrameLayout作为容器,替换子布局**:如果已知多个布局会共享同一个容器,可以在`Activity`的布局...

    SampleLayoutInflater

    - 从Activity:`LayoutInflater.from(Context context)`,例如`LayoutInflater inflater = LayoutInflater.from(this);` - 从ViewGroup:`LayoutInflater.from(ViewGroup viewGroup)`,例如`LayoutInflater ...

    AlertDialog.Builder多种不同用法

    View customView = LayoutInflater.from(this).inflate(R.layout.custom_dialog_view, null); builder.setView(customView); ``` 8. 显示对话框 最后,使用`create()`创建`AlertDialog`对象,并调用`show()`方法...

    android自定义Dialog、Toast

    builder.setView(LayoutInflater.from(this).inflate(R.layout.dialog_custom, null)); ``` 3. 添加操作:你可以通过`setPositiveButton()`, `setNegativeButton()`等方法为Dialog设置按钮,并提供点击事件处理。 ...

    Android在布局中动态添加view的两种方法共5页.pdf.zip

    本文将深入探讨两种主要的在布局中动态添加View的方法:使用LayoutInflater和直接通过代码创建。 首先,我们来看第一种方法,使用LayoutInflater。LayoutInflater是Android中的一个关键类,它负责将XML布局文件转换...

    Android Dialog用法-AlertDialog,ProgressDialog

    View view = LayoutInflater.from(this).inflate(R.layout.dialog_custom, null); new AlertDialog.Builder(this) .setView(view) // 其他设置... .show(); ``` 总结起来,Android中的Dialog是提升用户体验的...

    android layoutinflator

    `LayoutInflater` 主要通过两个方法来使用,这两个方法接收XML布局资源ID、父视图(如果有)以及是否附加到父视图的布尔值作为参数: 1. `inflate(int resource, ViewGroup root, boolean attachToRoot)` 这是最...

    RecyclerView添加头部和尾部,实现Item点击事件

    View headerView = LayoutInflater.from(parent.getContext()).inflate(R.layout.header_layout, parent, false); return new HeaderViewHolder(headerView); } else if (viewType == FOOTER_VIEW_TYPE) { View ...

    使用RecyclerView实现带Header和Footer的GridView

    // onBindViewHolder 和 getItemCount 方法... } ``` - 创建对应的ViewHolder类,例如HeaderViewHolder、FooterViewHolder和ItemViewHolder,分别处理Header、Footer和列表项的视图绑定。 3. **添加Header和...

    Android 安卓PopupWindow工具类

    文章目录引入效果图示例使用方法相关解释...View inflate1 = LayoutInflater.from(MainActivity.this).inflate(R.layout.pop_item, null, false); PopUtils popUtils1 = new PopUtils(v, inflate1); popUtils1.showPop

Global site tag (gtag.js) - Google Analytics