Flutter-Image、Icon的使用

Image Flutter中,可以通过Image来加载并显示图片,Image的数据源可以是asset、文件、内存以及网络等。在实际应用中,用到比较多的数据源是asset和网络。 一、从asset中加载图片 从asset中加载图片需要三步: 1、在工程根目录下创建一个images的目录,将需...

2019-05-08 18:05:35

阅读数 79

评论数 0

Flutter-Text详细介绍

一、TextStyle 属性 说明 Color color 文本颜色 如果指定了foreground,则此值必须为null TextDecoration decoration 绘制文本装饰: TextDecoration.unde...

2019-05-06 21:53:02

阅读数 19

评论数 0

Android自定义View-Path的详细介绍

一、构造方法 1、Path path=new Path();//空的构造方法 2、Path path=new Path(Path src);//创建一个新的路径,并从src路径获取内容赋值给新的路径 二、Path常用的一些方法 分类 Path方法 备注 点操作 m...

2019-03-14 20:54:50

阅读数 90

评论数 0

Android硬件加速

硬件加速渲染其实就是通过GPU来进行渲染,如果一个设备支持GPU硬件加速渲染,那么当Android应用程序调用Open GL接口来绘制UI时,Android应用程序的UI就是通过硬件加速技术进行渲染的。 软件绘制(单纯使用CPU)的整个绘制过程都是在主线程进行,如果同时要响应用户输入事件,有...

2019-03-11 16:18:30

阅读数 25

评论数 0

Android自定义View-Canvas的详细介绍

Canvas常用方法有: 1)drawXxx系列:以一定的坐标值在当前画图区域画图,需要注意的是图层会叠加,即后面绘画的图层会覆盖前面绘画的图层。 2)clipXxx系列:在当前的画图区域裁剪出一个新的画图区域,这个画图区域就是Canvas对象的当前画图区域了。比如:clipRect(new ...

2019-03-04 17:37:38

阅读数 49

评论数 0

Android自定义View之自定义属性

在我们平时写布局文件的时候会用到很多属性,这是系统帮我们定义好的一些属性,这些属性在\sdk\platforms\android-XX\data\res\valus目录下,这是系统自带的所有属性。如下就是一些常用到的系统自带属性: 因为所有的控件都是View的子类,所以View定义的属性所有...

2019-02-25 17:10:27

阅读数 39

评论数 0

Android命名空间xmlns的详细介绍

XML命名空间提供避免元素命名冲突的方法。 打个比方,A学校有名同学叫小明,B学校也有名同学叫小明,那我们如何识别这两名拥有相同名字的同学呢?这时候命名空间就派上用场了。A和B此时就可以被当成是命名空间了。也就是说,命名空间里面存放的是特定属性的集合。 Android中常见的命名空间 下面分...

2019-02-21 17:45:40

阅读数 64

评论数 0

自定义View一:三种测量模式

View类中的onMeasure()方法是用来测量当前View的宽度和高度的,有3种测量模式: MeasureSpec.UNSPECIFIED:不确定值,表示子布局想要多大就多大,很少使用 MEASURESPEC.AT_MOST:最大值,表示子布局限制在一个最大值内,一般为WRAP_CONTE...

2019-02-20 21:17:10

阅读数 126

评论数 0

EditText的selectAll()方法无效

现有一个这样的需求,有一个输入数量的EditText,当输入的数量过大的时候提示“输入数量过大”,并选中文本框中的内容,本来以为很容易实现的功能,按回车的时候判断一下EditText里面的数量是否过大,过大的话调用EditText.selectAll()方法选中内容。实现方法是: mEtOne...

2018-12-28 17:00:38

阅读数 340

评论数 0

Parcelable工作原理

一、Parcelable的作用 Parcelable是Android为我们提供的序列化接口。 什么是序列化呢?简单说就是将对象转换为可以传输的二进制流(二进制序列)的过程,这样我们就可以通过序列化,转化为可以在网络传输或者保存到本地的流(序列),从而进行数据传输,反序列化就是从二进制流(序列)...

2018-12-05 21:34:55

阅读数 169

评论数 0

Android通过监听软键盘弹起与关闭实现软键盘弹起时底部按钮消失、关闭时底部按钮显示

现在有一个需求,在一个页面中,顶部有一个悬浮的控件一直显示,中间是可滑动的,即使软键盘弹出;底部也有一个悬浮的控件,软键盘弹出的时候,底部悬浮控件不随着软键盘的弹出而上移显示。显示效果如图: 图一:软键盘隐藏 图二:软键盘显示-第一条获取焦点 图三:软键盘显示-最后一条获取焦点      ...

2018-11-19 18:04:47

阅读数 246

评论数 0

Android中Activity的android:windowSoftInputMode属性

 windowSoftInputMode属性主要是用来设置窗口软键盘的交互模式的,这个属性会有两个影响: 1)当有焦点产生时,软键盘是隐藏还是显示。 2)是否减少活动主窗口大小以便腾出空间放软键盘。 这个属性一共有9个值,分别是:stateUnspecified、stateUnchanged...

2018-11-14 21:31:13

阅读数 914

评论数 0

RecyclerView添加Header、Footer、Empty

有的时候,我们需要在RecyclerView的头部加一些信息,底部加一些信息(如加载更多),列表为空的时候显示一个空的提示,这个时候可以考虑为RecyclerView添加Header、Footer和Empty信息。我们知道RecyclerView其实是一个列表,这个时候我们就可以考虑把Header...

2018-09-14 18:43:58

阅读数 450

评论数 0

深入理解java.lang.StackOverflowError

StackOverflowError:栈溢出错误,如果一个线程所需用到栈的大小>配置允许最大的栈大小,那么jvm就会抛出StackOverflow。   栈的特点: 1、栈,也叫栈内存,是jvm的内存模型之一,每当启动一个新线程的时候,jvm都会为它分配一个java栈。...

2018-09-04 16:52:28

阅读数 214

评论数 0

Android中高低API版本兼容使用@TargetApi或者@SuppressLint("NewApi")

Android中高低版本的兼容使用@TargetApi或者@SuppressLint("NewApi") 例如我们在AndroidManifest.xml或build.gradle文件中中配置了sdk版本最低为19,目标为26。 build.gradle: ...

2018-09-03 16:39:06

阅读数 128

评论数 0

常见的HTTP请求错误码

1-xx:信息提示 这些状态码表示临时的响应,客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。 100:Continue,继续,初始的请求已经接受,客户应当继续发送请求的其余部分。 101:Switching Protocols,切换协议,服务器将遵从客户的请求转换到另外一种协...

2018-08-23 18:22:25

阅读数 621

评论数 0

Android Studio使用Gradle引入第三方库文件

使用AndroidStudio开发Android应用的时候,会经常需要借助Gradle引入各式各样的第三方库文件,帮助我们更好的开发App,常用的引入方式有:Jar包文件、aar文件、Library库文件、so文件、远程jcenter、maven仓库文件。这几种引入方式各有利弊,对应的gradle...

2018-08-09 16:18:23

阅读数 1071

评论数 0

Mac下对apk进行重签名

今天遇到的一个情况是需要对apk进行加固,但是加固过程中会向app中添加代码,所以加固完了以后需要重新签名,重新签名很简单,只需要执行一句命令即可。 首先先进入到签名文件所在的目录,然后执行命令: jarsigner -verbose -keystore qianmingwenjian.jk...

2018-08-08 18:27:45

阅读数 637

评论数 0

double类型数据保留n位小数

一、通过BigDecimal double b=1.255; BigDecimal d=new BigDecimal(b); double b2=d.setScale(n,BigDecimal.ROUND_HALF_DOWN).doubleValue(); 将double类型转换成BigDe...

2018-07-23 22:20:39

阅读数 1649

评论数 0

两个Activity之间传递含有BigDecimal类型变量的序列化(Parcelable)的实体时BIgDecimal类型数据为null

这两天遇到一个问题,我在两个Activity之间(A-B)传递数据时,传递了一个实体,这个实体中有BIgDecimal类型的成员m,在A页面中这个m还是有值的,但是到了B页面m就变成null了,这个实体是实现了Parcelable接口来序列化的,开始总是找不到原因,后来通过看实现了Parcelab...

2018-07-19 21:31:44

阅读数 441

评论数 0

提示
确定要删除当前文章?
取消 删除