更好用的 SuperTextView (v2.0.1) - (含)新年福利

Insight.io

新年福利

感谢一直以来支持 SuperTextView 的 Androider 们。 SuperTextView2017.04 有了第一次提交以后,至今已经有近8个月的时间了,从 star 也从 0 积累到了如今近 1.3k ,十分感谢你们支持。android

SuperTextView 从无到有的过程当中,有不少同窗提出了许多颇有建设性的建议,CoorChice 很是感谢这些同窗,也尽量的知足了一些你们的诉求。但因为如今 SuperTextView 已经在不少商业项目中落地使用,因此 CoorChice 在进行更新迭代的时候会更加谨慎些,以稳定性为主,因此并非全部同窗的期待都会获得知足,还请各位谅解。git


CoorChice 在此先祝全部同窗新年快乐!github

嗯,即然是新年,天然要来点福利喽,嗯哼...bash

SuperTextView 至今还有没有一个标识性的 Logo ,这不科学!惋惜 CoorChice 只是一个 Developer ,想了很久也画不出个满意的 Logo微信

因此,这次趁着新年,放个福利出来:app

帮助 CoorChiceSuperTextView 设计一个棒棒哒 Logo ,之后这个 Logo 就会被做为 SuperTextView 的官方标识啦!ide

CoorChice 但愿有才的你设计的 Logo 可以体现 SuperTextView 的特色(你能够参考 SuperTextView 的文档寻找灵感),同时简洁的 Logo 会更受欢迎哦!若是 Logo 可以具备很好的传播属性那就太棒了!svg

2017.12.29 起,至 2018.01.25 期间,你能够经过邮箱或微信将你设计的 Logo 发送给 CoorChiceCoorChice 会选出一个最适合的做品做为从此 SuperTextView 的官方标识。动画

【邮箱】:icechen_@outlook.comspa

【微信】:759393474

同时,重点来了!

被选中做为 SuperTextView 官方标识的做品, CoorChice 将会送给才华横溢的做者【两盒酷爽美味的小龙虾】做为感谢。嗯哼...吃货的肚子是否是已经饥渴难耐了呢?快快开始你的表演吧!

v2.0.1 - 将来,在此

一直以来,CoorChice都心存一个设想,期待着可以打造这样一个控件:它能知足你的大部分开发需求,展现文字、图片、几何、动画、状态,让你使用一个控件就能高效的完成大部分开发工做。它是如此的强大,仿佛有心智通常,接受着你的输入,按照你的心意,呈现出叹为观止的画面。随着【SuperTextView v2.0.1】的到来,咱们离这个设想更近了一步。如今,来和【SuperTextView v2.0.1】见个面吧!

SuperTextView v2.0

图片,就是如今

在【SuperTextView v2.0.1】中,增长了对图片展现的支持。但不只仅止于展现图片,它还能智能的根据你的输入将图片剪裁为你指望的形状。

image

给图片加上圆角,加上边框,或者直接变成圆形,全部的一切只须要设置几个简单的属性,即刻呈如今你的眼前。

展现一张图片

如何使用SuperTextView展现一张图片?只须要在xml中加上下面两句代码便可。

<com.coorchice.library.SuperTextView
    ...
    app:state_drawable="@drawable/avatar1"
    app:drawableAsBackground="true"
    ...
 />
复制代码

若是你是SuperTextView的忠实用户的话,你会发现,本来的state_drawable如今能够被用来展现一张图片。

给图片加上圆角

如今,你的图片呈如今了你的眼前,也许你还想对它作一些不同的事情,好比,加个圆角,或者直接变成圆形?没问题,SuperTextView如今彻底能胜任这样的工做。

<com.coorchice.library.SuperTextView
    android:layout_width="100dp"
    android:layout_height="100dp"
    ...
    app:corner="15dp"
    app:state_drawable="@drawable/avatar1"
    app:drawableAsBackground="true"
    ...
 />
复制代码

如此简单!在原来的基础上你仅仅须要设置合理的corner值就行。

也许,你还想要边框

有时候,你可能须要使用一个边框去包裹住你的图片,就像上面的示例那样。没错,这确定在SuperTextView能力范围内。

<com.coorchice.library.SuperTextView
    android:layout_width="100dp"
    android:layout_height="100dp"
    ...
    app:corner="50dp"
    app:stroke_color="#F4E187"
    app:stroke_width="4dp"
    app:state_drawable="@drawable/avatar1"
    app:drawableAsBackground="true"
    ...
 />
复制代码

app:stroke_color 掌控着边框的颜色,app:stroke_width 掌控着边框的宽度。一切如此流畅,一个有心智的控件本该如此,对吗?

第二个状态图

面对复杂的需求变化,【SuperTextView】为应对这种复杂性,孕育出了第二个状态图 state_drawable2

如今,CoorChice将向你展现,上图中的两种效果是如何实现的。

  • 示例一
<com.coorchice.library.SuperTextView
    android:layout_width="100dp"
    android:layout_height="100dp"
    ...
    app:corner="50dp"
    app:state_drawable="@drawable/avatar1"
    app:drawableAsBackground="true"
    // state_drawable2的配置由此开始
    app:isShowState2="true"
    app:state_drawable2="@drawable/recousers"
    app:state_drawable2_mode="rightTop"
    app:state_drawable2_height="20dp"
    app:state_drawable2_width="20dp"
    ...
 />
复制代码
  • 示例二
<com.coorchice.library.SuperTextView
    android:layout_width="100dp"
    android:layout_height="100dp"
    ...
    // 背景图
    android:background="@drawable/avatar7"
    // drawable1的配置由此开始
    app:isShowState="true"
    app:state_drawable="@drawable/triangle"
    app:state_drawable_mode="leftTop"
    app:state_drawable_width="20dp"
    app:state_drawable_height="20dp"
    // state_drawable2的配置由此开始
    app:isShowState2="true"
    app:state_drawable2="@drawable/recousers"
    app:state_drawable2_mode="rightTop"
    app:state_drawable2_height="20dp"
    app:state_drawable2_width="20dp"
    ...
 />
复制代码

就如你所熟悉的同样,state_drawable2 延续了第一代一切流畅的操做。在聪明的你合理的使用下,【SuperTextView】必定可以大放异彩!😉

属于Adjuster的时代

此前,Adjuster 的设计使得【SuperTextView】具备了灵魂,成为更聪明的控件。对绘制过程的插入,触摸事件的捕捉,使得你能轻松的从外部改变一个控件的状态。创意始于心,而行于此。

如今,【SuperTextView】可以同时承载最多3个 Adjuster !也许,你的创意会更加的炫目。

在上面这个示例中,CoorChice将早起的两个【扫光】和【涟漪】特效都加入到了一个【SuperTextView】中,结果就是你看到的这样。

更多的 Adjuster 意味着更多的组合,更多的惊喜。在【v1.4.0】中,CoorChice一样使用了 Adjuster 来轻松的实现了按压变色功能。

这是 Adjuster 的时代,睿智的你必定能够运用它挥洒创意的。

须要注意的是⚠️,本来的 setAdjuster(Adjuster) 方法目前仍然被保留,但之后的版本将会被移除,你必需要尽快迁移。新的替代方法为 addAdjuster(Adjuster)

其它

  • 修正控制Shader模式的属性 app:shaderMode="leftToRight" 的拼写。原来为 app:shaderMode="leftTopRight" 。若是你使用了该属性,在升级【SuperTextView v2.0.1】后请及时修正。
  • 增长 set/getPressBgColor()set/getPressTextColor() 用于在代码中控制按压背景色。
  • 修复【SuperTextView v2.0】中设置点击事件无效的Bug。

如何开始SuperTextView v2.0.1

dependencies {
	        compile 'com.github.chenBingX:SuperTextView:v2.0.1'
	}
复制代码

点击这里跳转SuperTextView项目地址。https://github.com/chenBingX/SuperTextView

写在最后

  • 若是你喜欢SuperTextView,但愿能顺手到 Github 点个star以示鼓励哦!
  • 抽出空余时间写文章分享须要动力,还请各位看官动动小手点个赞,给我点鼓励😄
  • 我一直在不按期的创做新的干货,想要上车只需进到个人【我的主页】点个关注就行了哦。发车喽~

点击这里跳转SuperTextView项目地址。https://github.com/chenBingX/SuperTextView

SuperTextView 旧版文档:https://www.jianshu.com/p/1b91e11e441d

相关文章
相关标签/搜索