首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

调用removeAllViews()后,Android布局不刷新

调用removeAllViews()方法后,Android布局不刷新的原因可能是因为没有调用requestLayout()方法或者invalidate()方法来触发布局的重新计算和绘制。

removeAllViews()方法用于移除布局中的所有子视图。但是它只是从布局的子视图列表中移除了子视图,并没有触发布局的重新计算和绘制。因此,需要手动调用requestLayout()方法或者invalidate()方法来通知布局进行刷新。

requestLayout()方法用于请求布局的重新计算和绘制。当调用该方法后,Android系统会在下一个绘制周期中重新计算布局,并进行相应的绘制操作。可以在调用removeAllViews()方法后立即调用requestLayout()方法来实现布局的刷新。

invalidate()方法用于请求视图的重绘。当调用该方法后,Android系统会在下一个绘制周期中重新绘制视图。可以在调用removeAllViews()方法后立即调用invalidate()方法来实现布局的刷新。

综上所述,解决调用removeAllViews()后Android布局不刷新的方法是在调用removeAllViews()方法后立即调用requestLayout()方法或invalidate()方法来触发布局的重新计算和绘制。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

WPF 的 VisualBrush 只刷新显示的视觉效果,刷新布局范围

但是本文需要说其中的一个 Bug —— 如果使用 VisualBrush 显示另一个控件的外观,那么只会在其显示效果有改变的时候刷新,而不会在目标布局改变的时候刷新布局。...---- 用于复现问题的代码 我们现在做一个可以用于验证此问题的布局。...下面的动图是 Rectangle 初始状态可见时,窗口运行的结果: 下面的动图是 Rectangle 初始状态不可见时,窗口运行的结果: 注意到了吗?...只有初始状态才能正确反应我们之前预估出的结果,而无论后面怎么再改变可见性,布局都不会再刷新了。只是——后面 VisualBrush 的内容始终重叠。...欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://blog.walterlv.com ),不得用于商业目的,基于本文修改的作品务必以相同的许可发布。

38050
  • Android制作AAR包并混淆加载调用

    在新的工程中直接引入AAR包,调用里面的实现方法,在虚拟机中直接显示了出来。...代码实现 制作AAR包 1.创建新的项目 新建一个Android Project,选择No Activity 2.创建外部调用类 在包下创建一个MathFun的类,里面写了一个Add的静态方法可以让外部调用...包中看到,所以最终采用的新建了一个包将MathMinify的类放到新的包下解决。...混淆过后通过原来的名字去找混淆的名字,是找不到对应方法和类,就会出异常报错。所以有些情况是不能进行混淆的。...自定义控件不进行混淆 枚举类不被混淆 反射类不进行混淆 实体类不被混淆 JS调用的Java方法 四大组件不进行混淆 JNI中调用类不进行混淆 Layout布局使用的View构造函数、android:onClick

    5K30

    Android开发笔记(一百二十三)下拉刷新布局SwipeRefreshLayout

    SwipeRefreshLayout 下拉刷新布局SwipeRefreshLayout是Android又一与时俱进的控件,顾名思义它随着用户手势向下滑动就会触发刷新操作。...SwipeRefreshLayout的旧版与新版之间的界面区别主要有: 1、旧版的进度条是布局顶部的一条横线,而新版的布局顶部的一个圆圈。...首先要注意:在布局文件中,android.support.v4.widget.SwipeRefreshLayout下面只能有一个直接子视图,如果有多个子视图,那么将只展示第一个子视图,后面的子视图将不予展示...3、GridLayoutManager的setLayoutManager方法,在布局管理信息发生变化时,随时调用该方法生效最新的布局配置,这样列表项的增删操作就能显示动画效果。...2、调用RecyclerView的setOnTouchListener方法,并实现一个触摸监听器传给该方法,监听器中也是一样捕获上拉事件并进行后续处理。

    1.8K30

    Android开发笔记(九十九)圆形转盘

    对于继承自ViewGroup的视图容器,情况要复杂些,大致得进行以下步骤处理: 1、先删除下面的所有视图,然后添加新的视图,最后请求刷新布局。...具体代码示例如下: removeAllViews(); addView(mImageView); requestLayout(); 2、重写onMeasure函数,该函数原本只测量容器;...layout方法完成布局。...Matrix类的postRotate方法设置旋转角度,再根据设置好的Matrix调用Bitmap的createBitmap方法创建旋转的图像; 2、先调用Matrix类的setRotate方法设置旋转角度...,再根据设置好的Matrix调用Canvas的drawBitmap方法创建旋转的图像; 下面是一个可旋转图像的自定义控件代码: import com.example.exmturntable.util.BitmapUtil

    1.9K30

    深入解析Android中的setContentView加载布局原理

    前言 对于Android的开发者来说,setContentView大家再熟悉不过了,在我们的Activity中首先就是要用它加载我们的布局,但是应该有一部分人是不知道加载布局的原理,也包括我,今天就从源码的角度分析...android:id="@android:id/content"的FrameLayout,我们的布局文件就添加到这个FrameLayout中了。...createSubDecor() { TypedArray a = mContext.obtainStyledAttributes(R.styleable.AppCompatTheme); //如果哦们设置置...获取控件将windowContentView 的id清空,并将 contentView的id由R.id.action_bar_activity_content更改为android.R.id.content...不为空,先removeAllViews(无转场动画情况)再直接执行mContentParent.addView(view, params);即将subDecor添加到mContentParent @

    1.5K31

    setContentView的时候,到底发生了什么

    陌生的原因是因为我们从来都只用这个方法,但是很少会去了解这个方法具体干了什么的,会出现这种状况的原因其实很简单,google把这个方法封装的太好用了,我们只需要调用这个方法,那么布局就会跟这个activity...protected ViewGroup generateLayout(DecorView decor) { // 结构相似的requestFeature(xxx) // 一堆妙(kan)(...Android提供的内容mContentParent打包进Scene 通过LayoutInflater解析布局,将布局转化为View 将view添加到mContentParent中 将整个界面装载到系统界面中...) 根据主题选择一个系统布局 将我们的布局放进系统布局中 现在我们的流程是: 调用setContentView(实际调用AppCompatDelegateImplV9的setContentView) 创建了一个新的...ViewGroup,并叫做subDecor 调用PhoneWindow的setContentView 根据主题选择一个系统布局 将subDecor放到系统布局中 我们继续来看AppCompatDelegateImplV9

    29130

    WebView三问—B站真题

    的loadUrl() // 调用javascript的callJS()方法 mWebView.loadUrl("javascript:callJS()"); 但是这种不常用,因为它会自动刷新页面而且没有返回值...(new AndroidtoJs(), "test"); //js中: function callAndroid(){ // 由于对象映射,所以调用test对象等于调用Android映射的对象...test.hello("js调用android中的hello方法"); } 这种方法虽然很好用,但是要注意的是4.2以后,对于被调用的函数以@JavascriptInterface进行注解...使用方法很简单,xml文件中写出进程名即可,销毁的时候调用System.exit(0) <activity android:name=".WebActivity" android:process=...脚本执行慢,就让脚本在最后运行,阻塞页面解析。 同时,合理的预加载、预缓存可以让加载速度的瓶颈更小。 WebView初始化慢,就随时初始化好一个WebView待用。

    61010

    Android实现音乐播放器歌词显示效果

    一.自定义LycicView extends ScrollView 里面包括一个空白布局,高度是LycicView的一半,再是一个布局存放歌词的,最后是一个空白布局高度是LycicView的一半。...new LinearLayout(getContext()); rootView.setOrientation(LinearLayout.VERTICAL); //创建视图树,会在onLayout执行立即得到正确的高度等参数...} /** * */ void refreshRootView(){ rootView.removeAllViews();//刷新,先把之前包含的所有的view清除 //创建两个空白view LinearLayout...null){ lycicList = new LinearLayout(getContext()); lycicList.setOrientation(LinearLayout.VERTICAL); //刷新...Color.BLUE); }else{ lyricItems.get(i).setTextColor(Color.WHITE); } prevSelected = index; } } /** * 设置歌词,并调用之前写的

    2.7K10
    领券