最近需要做一个关于色卡的App,需要用到LayoutInflater来实现标签动态切换View界面,但是发现在使用过程中App突然会闪退,

闪退目前已解决。

  1. 先看下关于findViewById()的详细介绍:findViewById()是找具体某一个xml下具体 widget控件(如:Button,TextView等)
  2. 我的闪退原因:我将findViewById()用在了还没有动态加载我要查找组件的xml,导致闪退
  3. 解决方法:用在之后。。。

搜集了一些大佬的代码注释等,比我说的更加清楚。

大佬的代码原地址:https://www.cnblogs.com/niray/p/3815059.html

Inflater与findViewById()区别

/**
* Inflater英文意思是膨胀,在Android中应该是扩展的意思吧。 LayoutInflater的作用类似于
* findViewById(),不同点是LayoutInflater是用来找layout文件夹下的xml布局文件,并且实例化! 而
* findViewById()是找具体某一个xml下的具体 widget控件(如:Button,TextView等)。
*/ // LayoutInflater的作用是,把一个View的对象与XML布局文件关联并实例化
LayoutInflater inflater = (LayoutInflater) listviewActivity.this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE); // LayoutInflater的作用是,把一个View的对象与XML布局文件关联并实例化
View itemView = inflater.inflate(R.layout.listview_item, null); // View的对象实例化之后,可以通过findViewById()查找布局文件中的指定Id的组件
TextView title = (TextView) itemView.findViewById(R.id.txttitle);
TextView text = (TextView) itemView.findViewById(R.id.txtContent);
/**
* Inflater英文意思是膨胀,在Android中应该是扩展的意思吧。 LayoutInflater的作用类似于
* findViewById(),不同点是LayoutInflater是用来找layout文件夹下的xml布局文件,并且实例化! 而
* findViewById()是找具体某一个xml下的具体 widget控件(如:Button,TextView等)。
*/ // LayoutInflater的作用是,把一个View的对象与XML布局文件关联并实例化
LayoutInflater inflater = (LayoutInflater) listviewActivity.this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE); // LayoutInflater的作用是,把一个View的对象与XML布局文件关联并实例化
View itemView = inflater.inflate(R.layout.listview_item, null); // View的对象实例化之后,可以通过findViewById()查找布局文件中的指定Id的组件
TextView title = (TextView) itemView.findViewById(R.id.txttitle);
TextView text = (TextView) itemView.findViewById(R.id.txtContent);

关于在findViewById()方法时遇到的一些问题的更多相关文章

  1. Android:认识R类、findViewById方法查找组件、@string查找字符、@color查找颜色、@drawable查找图片、@dimen某个组件尺寸定义、项目引入资源国际化

    导入 之前都是断断续续的看了一些于如何使用android开发的文章.资料等,到目前位置很多基础的东西都不清楚,于是去学习了别人的课程,才了认识了R类.findViewById方法查找组件.项目引入资源 ...

  2. 35.按要求编写Java程序: (1)编写一个接口:InterfaceA,只含有一个方法int method(int n); (2)编写一个类:ClassA来实现接口InterfaceA,实现int method(int n)接口方 法时,要求计算1到n的和; (3)编写另一个类:ClassB来实现接口InterfaceA,实现int method(int n)接口 方法时,要求计算n的阶乘(n

      35.按要求编写Java程序: (1)编写一个接口:InterfaceA,只含有一个方法int method(int n): (2)编写一个类:ClassA来实现接口InterfaceA,实现in ...

  3. 重写equals()方法时,需要同时重写hashCode()方法

    package com.wangzhu.map; import java.util.HashMap; /** * hashCode方法的主要作用是为了配合基于散列的集合一起正常运行,<br/&g ...

  4. [改善Java代码]覆写equals方法时不要识别不出自己

    建议45: 覆写equals方法时不要识别不出自己 我们在写一个JavaBean时,经常会覆写equals方法,其目的是根据业务规则判断两个对象是否相等,比如我们写一个Person类,然后根据姓名判断 ...

  5. 第八条——覆盖equals方法时需遵守的通用约定

    1)自反性 对于任何非null的引用值x,x.equals(x)必须返回true.---这一点基本上不会有啥问题 2)对称性 对于任何非null的引用值x和y,当且仅当x.equals(y)为true ...

  6. 调用具体webservice方法时时报错误:请求因 HTTP 状态 503 失败: Service Temporarily Unavailable

    添加web引用会在相应项目的app.cofig文件中产生如下代码: <sectionGroup name="applicationSettings" type="S ...

  7. Effective Java 第三版——10. 重写equals方法时遵守通用约定

    Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...

  8. Effective Java 第三版——11. 重写equals方法时同时也要重写hashcode方法

    Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...

  9. 重载equals方法时要遵守的通用约定--自反性,对称性,传递性,一致性,非空性

    本文涉及到的概念 1.为什么重载equals方法时,要遵守通用约定 2.重载equals方法时,要遵守哪些通用约定   为什么重载equals方法时,要遵守通用约定 Object类的非final方法都 ...

随机推荐

  1. uniapp动态修改导航栏

    1.修改导航栏buttons 如图动态修改角标 <template> <view> </view> </template> <script> ...

  2. 解决vue生产环境app.js或vendor文件过大问题

    1.去掉多余的库 将不必要的库卸载掉 npm uninstall xxx 举个例子:例如moment库文件是很大的,在前端可以用js的 new Date实现获取日期,或者可以其他库代替,也可以将mom ...

  3. javaScript系列 [09]-javaScript和JSON (拓展)

    本文输出JSON搜索和JSON转换相关的内容,是对前两篇文章的补充. JSON搜索 在特定的开发场景中,如果服务器端返回的JSON数据异常复杂(可能超过上万行),那么必然就有对JSON文档进行搜索的需 ...

  4. Vue.js高效前端开发 • 【Vue列表渲染】

    全部章节 >>>> 文章目录 一.v-for指令 1.v-for指令使用 2.实践练习(待更新) 二.计算属性 1.计算属性创建和使用 2.实践练习(待更新) 三.侦听属性 1 ...

  5. 编写Java程序,比较两个Dog对象是否为同一个对象

    返回本章节 返回作业目录 需求说明: 重写Dog类的equals(Object obj)方法. 如果equals(Object obj)中obj为Dog类型,则判断当前 对象的dogName与obj对 ...

  6. Eclipse启动SpringCloud微服务集群的方法

    1.说明 下面这篇文章介绍了Eureka Server集群的启动方法, SpringCloud创建Eureka模块集群 是通过jar包启动时指定配置文件的方式实现的. 现在只有Eureka Serve ...

  7. 初识python: 属性方法 @property

    属性方法:通过@property把一个方法变成一个静态属性 实例: 调用航班的状态 # 查看航班状态 import random class CheckState(object): def __ini ...

  8. vue 传入后台的数据多了个=

    解决方法: 在前端值参时用{} 在后台接收时用Map 来自为知笔记(Wiz)

  9. python安装第三方库的步骤

    windows下举例:1.下载openpyxl,http://pypi.doubanio.com/simple/openpyxl/2.将下载后的文件解压放到Python文件夹下的Lib文件夹下3.cm ...

  10. spring的返回json数据给前端注意事项

    1. 记得加入SpringJSON解析包,否则spring无法将返回的pojo类解析成json数据 maven则加上下面的依赖包 <!-- SpringJSON解析包--> <jac ...