10 chunqiuwei

尚未进行身份认证

我要认证

提高技术

等级
TA的排名 1k+

LinearLayout removeAllViews后再 addView页面不展示

博主今天使用SmartRefreshLayout+ScrollView +ViewPager+Fragment的时候遇到了一个问题,下图是实现的效果:上图每个Tab对应的页面都是一个Fragment,此时页面定位到首页这个tab,首页Fragment的布局很简单:就是一个LinearLayout: <LinearLayout android:id="@+id/list_layout" android:layout_width="match_parent"

2020-08-10 17:17:52

Android studio 4.0 Layout Inspector查看当前Activity

在使用Android studio的时候博主很喜欢使用Layout Inspector功能来查看当前的Activity。这样对于熟悉新项目来说特别有用。但是升级了4.0版本之后发现每次点击Layout Inpsector都是直接显示布局结构了,并没有熟悉的Activity选择框,然后博主一番寻找找到了解决方式:点此查看。修改之前:Tools–>Layout Inspector修改方法:File > Settings > Experimental 把 Enable Live Layout

2020-07-31 17:16:10

Mac配置adb笔记

第一次使用Mac,做一个关于adb 配置的简单的笔记步骤如下:1、sudo vim ~/.bash_profile,打开 .bash_profile文件。2、按i进入输入模式,在文件内容的末尾加入以下内容:export ANDROID_HOME=/Users/userName/Library/Android/sdkexport PATH=${PATH}:${ANDROID_HOME}/platform-toolsexport PATH=${PATH}:{ANDROID_HOME}/tools

2020-07-01 16:23:13

Flutter之路由系列之Navigator简析

博主的博客Flutter之路由系列之LocalHistoryRoute简单的梳理下Flutter的路由机制,其中Navigator扮演者重要的角色。本篇博文就简单梳理下Navigator的相关知识点。闲言少叙,开始发车。通过本篇博客你可以了解到:1、MaterialApp内置了一个Navigator对象2、一个APP中有多个Navigator对象在调用Navigator.of(context)要注意的事项本篇通过一个demo app来说明Navigator的用法及其细节,在我们的demo中有个四个页

2020-06-11 11:41:11

Flutter之路由系列之Route

Flutter提供了强大的路由管理功能,在这里就来梳理下Route的相关知识点。先来直观的看下Route的家族成员:1、Route的install逻辑咱们先来简单分析下Route,下来看看源码:abstract class Route<T> { RouteSettings _settings; NavigatorState _navigator; List<OverlayEntry> get overlayEntries => con

2020-06-04 17:12:58

Flutter之BottomSheet

在Flutter之SnackBar原理详解详细的介绍了SnackBar的使用极其原理,SnackBar主要功能是提供了一个简单的消息,虽然跟用户有一定的交互。但是其目的主要是提示性消息。且会自动消失。除了SnackBar之外,Flutter又提供了一个BottomSheet,该组件可以在屏幕底部展示了一个可供用户交互功能的页面。通过本篇博文你可以了解到:1、showBottomSheet和showModalBottomSheet的区别2、关闭BottomSheet的方式3、BottomSheet的基

2020-05-29 14:53:52

Flutter之SnackBar原理详解

初次学习SnackBar控件,第一反应就是这货怎么感觉跟Android的Toast一样!使用起来确实简单Snackbar的作用就是在屏幕的底部展示一个简短的消息,与此同时,Snackbar也可以与用户进行交互,实现效果如下图:如上图所示SnackBar分成两个部分:内容区域(content)+交互区域(action)。Scaffold是可以配置底部导航tab的,如果配置了的话,SnackBar怎么展示呢?如下图可以看出SnackBar紧贴着底部导航tab展示:上面两图展示SnackBar的代码如下

2020-05-28 11:18:03

Flutter之SafeArea

博主相关资料:Flutter之MediaQuery本篇博文比较简单,用四张图来对比说明下SafeArea的作用!1、未使用SafeArea的代码:Widget build(BuildContext context) { return Container( color: Colors.green,///绿色背景 child: Image.asset( "images/tree.png", fit: BoxFit.fill,///充满全屏

2020-05-25 14:20:26

设计模式之单例模式浅谈

面向对象的世界里,在一个系统或者应用的生命周期中,总会伴随着对象的大量创建和销毁。有的对象生命周期很短,如昙花一现;有的生命周期却很长,跟电视剧的主角一样可以活到最后一集。具有主角光环的这个对象就是单例对象。 单例模式的目的就是确保在系统或应用的生命周期中,一个类Class只有一个实例对象存在。单例对象的特点之一就是该对象生命周期比较长(当然不排除某个子系统内部的使用完毕后就置null),所以应用的各个子功能或者系统都可以访问使用它(前提是该单例对象是public的)。但是这样会有一个内存泄漏的风险,如果

2020-05-20 13:58:55

Flutter动画系列之SizeTransition

SizeTransition为尺寸控制动画,其内部核心原理是其child外面包裹着一个Align,然后利用Align的widthFactor和heightFactor的性质,动态的改变父组件的大小,注意是父组件,不是子组件。Flutter之Align和AlignmentGeometry...

2020-05-14 13:35:08

Flutter之MediaQuery

在学习Flutter的时候时不时会看到这个控件的使用,一直对该组件一知半解。本篇博文就梳理下相关知识点。MediaQuery从源码上看是一个简单不过的Widget:class MediaQuery extends InheritedWidget { /// Creates a widget that provides [MediaQueryData] to its descendants....

2020-05-01 21:22:16

Flutter之RenderObjectWidget

与本篇博文有关的参考资料:Flutter之ParentDataWidgetFlutter之Widget构建过程详解Fultter之Element和Widget对应关系解析Flutter之BuilderContext和Widget关系浅析在Flutter之ParentDataWidget一文中博主分析了ParentDataWidget,该控件和RenderObjectWidget有千丝万缕...

2020-04-27 09:10:07

Flutter之ParentDataWidget

Flutter除了StatelessWidget,StatelessWidget之外还有一类Widget,也就是ProxyWidget:如上图所示ProxyWidget有两个直接子类:InheritedWidget和本篇博文的主角ParentDataWidget.ProxyWidget是什么?正如上文所示,ProxyWidget是ParentDataWidget的父类(废话)。不过从源码上...

2020-04-26 08:56:09

Flutter之EdgeInsetsGeometry简析

没时间解释了,先来一段代码:Container( width: 200, height: 200, color:Colors.red, padding: EdgeInsets.all(10), child: Container( color:Colors.green, ), ...

2020-04-17 16:20:08

Flutter之ScrollView简析

ScrollView是一个抽象类,其具体的子类如下图所示:本篇博文不会过多深入到ScrollView的细节里面,就简单的梳理下其布局流程。既然是有个抽象类,其提供了一个抽象方法: List<Widget> buildSlivers(BuildContext context); 该方法就是用来构建我们的滚动列表的每一项,下面就来分析这个布局方法怎么构建出来的。因为ScrollView...

2020-04-13 09:34:33

Flutter之GridView简析

博主很久之前的这篇文章《Flutter实战之顶部导航栏以及ListView简单应用》简单的写了下ListView的应用,ListView属于Flutter的ScrollView。本篇博文就来简单解析下ScrollView.先来看看ScrollView的结构:本文主要讲下GridView...

2020-04-08 17:19:56

Flutter PageView简析

Flutter中的PageView有点类似于Android中的ViewPager,但是PageView提供了额外的配置,比如PageView既可以支持横向翻页也可以支持竖直翻页。今天就来简单的解析下这个控件。PageView可以通过三种方式来创建:1、通过构造器创建2、通过PageView.custom方法创建3、使用PageView.builder方法创建。通过构造器创建先来看看构造...

2020-03-30 17:42:46

Flutter之Positioned

关于该控件官方注释有这么一句:A [Positioned] widget must be a descendant of a [Stack],A widget that controls where a child of a [Stack] is positioned,意思是一个Positioned的widget必须是Stack的子组件,且Positioned组件的作用是用来控制widget在S...

2020-03-19 15:48:26

Flutter之Stack

博主初次接触Stack的时候,第一个感觉就是这玩意不就是跟Android的FrameLayout的效果一样的吗。都可以实现UI的叠加效果。在此简单的分析下这个控件,算是一个简单的学习笔记。看看官方demo给的效果:实现代码如下,简单的实现了红绿蓝三个色块的叠加 child: Stack( children: <Widget>[ Con...

2020-03-17 15:50:34

Flutter之Align和AlignmentGeometry

Align是这么一个组件,它可以调整子组件的位置,并且根据子组件的宽和高来确定自身的宽和高!Align对象提供了一个alignment,用来控制子组件在父组件的位置。比如左上角,右上角,左下角,右下角等等。如果不设置的话,默认子组件相对于父组件居中展示。 Container( height: 120.0, width: 120.0, ...

2020-03-11 11:30:18

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证(专家版)
    技术圈认证(专家版)
    博客专家完成年度认证,即可获得
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 博客之星-入围
    博客之星-入围
    授予每年博客之星评选结果第21-200名的用户
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。