Android Studio 布局无法预览,显示为空白的一个原因
2017-02-25 11:25
477 查看
Android Studio 布局无法预览,显示为空白的一个原因
在使用Android Studio 的过程中,在改动自定义的控件后出现了布局预览不显示的情况,直接显示为空白.什么都没有.
起初在网上找了一些解决方法,大致都是由于编译版本,或者主题关联错误导致,但是尝试无果,并不是因为这个原因.
在尝试注释掉自定义控件后布局预览正常,于是排查自定义控件的情况,确定了是因为自定义控件中加入了一些在真实设备才能使用的一些方法.
具体如下:
这里因为获取了状态栏高度导致不正常(代码是修复之后的.
解决办法也很简单,在调用这类方法的地方 使用isInEditMode() 这个方法进行判断.
这个方法是用来判断是否是处于编辑预览的状态 z
在使用Android Studio 的过程中,在改动自定义的控件后出现了布局预览不显示的情况,直接显示为空白.什么都没有.
起初在网上找了一些解决方法,大致都是由于编译版本,或者主题关联错误导致,但是尝试无果,并不是因为这个原因.
在尝试注释掉自定义控件后布局预览正常,于是排查自定义控件的情况,确定了是因为自定义控件中加入了一些在真实设备才能使用的一些方法.
具体如下:
@Override public void setLayoutParams(ViewGroup.LayoutParams params) { if (!isInEditMode()&¶ms instanceof MarginLayoutParams) { MarginLayoutParams marginLayoutParams = (MarginLayoutParams) params; marginLayoutParams.topMargin = (int) getResources().getDimension(R.dimen.status_height); Logger.D("状态栏高度: "+getStatusBarHeight()+" "+marginLayoutParams.topMargin); } super.setLayoutParams(params); }
这里因为获取了状态栏高度导致不正常(代码是修复之后的.
解决办法也很简单,在调用这类方法的地方 使用isInEditMode() 这个方法进行判断.
这个方法是用来判断是否是处于编辑预览的状态 z
相关文章推荐
- 浏览器预览PHP文件时顶部出现空白影响布局分析原因及解决办法
- 由于以下一个或多个原因,无法在数据表视图中显示列表:
- Android Studio 无法预览布局问题:com/android/util/PropertiesMap
- Horizontalscrollview里添加一个布局,该布局里在添加一个自定义的View,为什么View里用Canvas画图无法显示?
- Android studio 页面布局无法显示问题
- ASp.net中引用图片,图片无法正常显示的一个原因
- 我用vs2005写了一个webservice用来查询sql2005数据库中表值,返回一个dataset类型集合,测试时候显示的xml文档没有问题,但是当我添加web引用的时候却无法正常显示而且报错原因之一。
- android studio 布局无法预览
- 织梦增加广告不显示.无法预览原因
- Horizontalscrollview里添加一个布局,该布局里在添加一个自定义的View,为什么View里用Canvas画图无法显示?
- Horizontalscrollview里添加一个布局,该布局里在添加一个自定义的View,为什么View里用Canvas画图无法显示?
- android studio 无法在可视化页面预览布局文件
- Android Studio 无法在可视化页面预览布局文件
- Android Studio无法预览布局而且没有任何提示
- 由于以下一个或多个原因,无法在数据表视图中显示列表
- android studio 无法在可视化页面预览布局文件
- AndroidStudio-xml预览布局无法正常显示tag requires a 'drawable' attribute or child tag defining a drawable
- android studio 无法在可视化页面预览布局文件
- iOS 一个控件无法显示出来的原因
- android studio 预览(preview)窗口无法显示 怎么处理