`
gryphone
  • 浏览: 433625 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

界面 Inflater

阅读更多
界面 Inflater

[功能]
android 提供了一个工具 能够把int 的 *.xml 文件转化为 View 这就是XxxInflater 主要有2种:
* LayoutInflater
* MenuInflater

[使用]
1. 得到 LayoutInflater & MenuInflater 的实例
MenuInflater mInflater = getMenuInflater();
LayoutInflater lInflater = getLayoutInflater();

(需要补充的是:上述二者仅在 Activity 中才有效!)

2. 如何使用

* MenuInflater  //比如现在有一个关于 menu 的 menu_item.xml 如下:
<?xml version="1.0" encoding="utf-8"?>  
<menu xmlns:android="http://schemas.android.com/apk/res/android">  
    <item   
        android:id="@+id/Item_1"   
        android:title="Item_1"  />  
    <item   
        android:id="@+id/Item_2"   
        android:title="Item_2" />  
    <item   
        android:id="@+id/Item_3"   
        android:title="Item_3" 
        android:enabled="false"  />  
</menu>


现在把它转化为 View.
public boolean onCreateOptionsMenu(Menu menu) {
    	super.onCreateOptionsMenu(menu); 
    	MenuInflater mInflater = getMenuInflater();

    	mInflater.inflate(R.layout.menu_item, menu);
    	return true;
    }



LayoutInflater  // 和 MenuInflater 的使用基本类似 也是根据int 的 *.xml 文件得到 View 所不同的就是 嵌套原因 所以多了一个参数-ViewGroup 用来表示 父View 比如:在 LinearLayout layout 里面有一个 TextView 且其用tv.xml 描述 那么应该如下使用
LayoutInflater iInflater = getLayoutInflater();
iInflater.inflate(R.layout.tv,layout);




All!
分享到:
评论

相关推荐

    inflate的使用

    `inflate`方法通常在Activity、Fragment或者自定义ViewGroup中被调用,用于动态加载和插入布局,使得我们的应用界面具有更高的灵活性和可定制性。 `inflate`方法是`LayoutInflater`类的核心功能,它接收三个参数:...

    LayoutInflater inflate例子

    在Android开发中,`...通过合理利用`inflate()` ,我们可以创建出更加动态和交互丰富的用户界面。在给定的`MyTeach` 文件中,可能包含了一些教学资源,可以帮助进一步学习和实践`LayoutInflater` 的使用。

    LayoutInflater inflate 示例demo

    通过`inflate()`,开发者可以灵活地构建和控制UI,使应用程序的界面更富有动态性和交互性。 总的来说,这个"LayoutInflater inflate 示例demo"是一个很好的学习资源,它将帮助你深入理解Android中布局动态加载的...

    LayoutInflater.from(context).inflate()方法的调研

    在Android开发中,`LayoutInflater.from(context).inflate()`方法是一个至关重要的组件,用于将XML布局文件转换为视图对象并添加到视图层次结构中。这个方法广泛应用于动态加载和构建用户界面,尤其在处理列表视图、...

    Inflate与ListView的使用

    在Android开发中,`Inflate` 和 `ListView` 是两个重要的概念,它们是构建用户界面时不可或缺的部分。本文将深入探讨这两个概念以及如何将它们结合起来,实现一个自定义且功能丰富的`ListView`。 首先,`Inflate` ...

    LayoutInflater源码分析 inflate方法的区别

    在Android开发中,`LayoutInflater`...正确使用这些方法能够帮助我们构建更加灵活、高效的用户界面。在处理ListView、RecyclerView等需要复用视图的场景时,尤其需要注意视图的创建和附加方式,以达到最佳的性能效果。

    安卓登陆界面设计

    `LayoutInflater.from(Context)`方法可以获取LayoutInflater实例,然后通过`inflate()`方法将XML布局插入到父视图中。 2. **元素设计**: - **文本输入框**:登录界面通常包含用户名和密码的输入框,可以使用`...

    Android高级应用源码-做了四个界面的滑动功能,设置了每个界面的移动动画操作.zip

    开发者可能自定义了一个`PagerAdapter`,实现了`Inflate`布局、获取页面数量和`getItemPosition`等方法,以便为`ViewPager`提供不同的界面内容。 4. **页面滑动动画**: - 为了增加用户交互的视觉效果,开发者可能...

    Android LayoutInflater中 Inflate()方法应用

    总的来说,`LayoutInflater` 的`inflate()` 方法是Android应用中动态加载布局的关键,它与`findViewById()` 和`ViewStub` 配合使用,可以灵活地处理各种界面构建需求。了解这些方法的正确使用方式,对于提升Android...

    Android getViewById和getLayoutInflater().inflate()的详解及比较

    这种组合使得我们可以在运行时动态地构建和修改用户界面,增强了应用的灵活性和可定制性。 总结,`findViewById()` 和 `getLayoutInflater().inflate()` 在Android开发中都扮演着关键角色。理解它们的工作原理和...

    使用代码编写Android界面布局源代码

    在实际应用中,`LayoutInflater`常用于从XML布局文件中加载视图,然后可以通过`inflate()`方法将它们添加到代码创建的布局中。这允许开发者结合静态和动态布局,实现更复杂的UI结构。 此外,`LayoutParams`也是关键...

    Android高级用户界面编程技巧

    ### Android高级用户界面编程技巧 #### 一、引言 在Android应用开发中,用户界面的设计与实现至关重要,良好的用户体验往往能显著提升应用的吸引力。本文档将深入探讨Android界面编程的一些高级技巧,特别是关于...

    界面布局实例

    5. ** inflated布局**:在运行时,我们需要将XML布局文件“充气”(inflate)到内存中的对象,以便可以与之交互。在Activity的`onCreate`方法中,我们通常会调用`setContentView(R.layout.activity_main)`来加载布局...

    仿QQ主界面Fragment简单应用

    View view = inflater.inflate(R.layout.fragment_qq_home, container, false); // 初始化界面元素和设置监听器 // ... return view; } } ``` 接下来,我们会在主Activity中添加和管理这些Fragment。可以...

    Android之ListView列表视图和界面跳转实现

    convertView = LayoutInflater.from(context).inflate(R.layout.list_item, parent, false); } TextView textView = convertView.findViewById(R.id.textView); textView.setText(items.get(position)); return...

    模仿qq群组滑动界面切换

    return inflater.inflate(R.layout.group_chat_layout, container, false); } // ... } ``` 2. **创建FragmentPagerAdapter**:`FragmentPagerAdapter`是`PagerAdapter`的一个实现,专门用来管理`Fragment`。你...

    易语言-zip_deflate(压缩)与zip_inflate(解压)

    3. **精易模块**:精易模块是易语言生态系统中的一个重要组成部分,提供了大量的系统调用和实用函数,包括文件操作、网络通信、图形界面等。在这个例子中,精易模块可能包含了处理`zip_deflate`和`zip_inflate`的...

    Android游戏开发学习(4)--界面的切换的两种方式

    return inflater.inflate(R.layout.fragment_layout, container, false); } } ``` 3. 在Activity中,使用FragmentManager和FragmentTransaction来添加、替换或移除Fragment: ```java FragmentManager ...

    Android用户界面程序设计示例

    在Android中,可以使用Menu控件来创建菜单,并使用inflate()方法来加载菜单项。在该示例中,演示了如何创建一个Menu控件,并加载菜单项。 Dialog对话框 Dialog是一个对话框控件,用于显示某些信息。在Android中,...

    android导航界面,左右滑动图片

    View view = inflater.inflate(R.layout.fragment_image, container, false); ImageView imageView = view.findViewById(R.id.image_view); Glide.with(this).load(imageUrl).into(imageView); // 使用Glide库...

Global site tag (gtag.js) - Google Analytics