本篇博客带来一个具有强大提示的Material Design风格的控件TextInputLayout,使用这个控件可以非常方便的做出用户登录界面帐号密码输入框的效果,文章将会从以下TextInputLayout使用和TextInputLayout源码分析两个方面对这个强大的控件进行分析。
本文实例为大家分享了TextInputLayout输入框悬浮标签的具体代码,供大家参考,具体内容如下
TextInputLayout是MaterialDesign库中对编辑框EditText进行增强的一个控件。众所周知,EditText未输入字符时,我们可以给它显示默认的提示文字hint;可是一旦输入字符,这个hint提示就消失了,虽然没有提示也没有什么大碍,但有总比没有好呀。TextInputLayout便是用来解决提示文字的显示问题,它默认把提示文字显示在编辑框的上方,这样在编辑框内输入文字,就不影响上方的提示文字了。 代码中使用TextInputLayout要进行以下改造: 1、添加几个库的支持,包括design库(TextInputLayout需要)、appcompat-v7库(AppCompatActivity); 2、编辑框所在页面的Activity需要继承自AppCompatActivity,否则运行时打开页面会报错; 3、布局文件中在TextInputLayout节点下面加入EditText控件,必须并且只能加入一个EditText; 下面是TextInputLayout新增的方法说明: setHint : 设置提示文字的内容。 setHintEnabled : 设置提示文字是否可用。 setHintTextAppearance : 设置提示文字的风格。 setHintAnimationEnabled : 设置提示文字的展示动画是否可用。 setError : 设置错误文字的内容。 setErrorEnabled : 设置错误文字是否可用。 setCounterEnabled : 设置文字计数器是否可用。 setCounterMaxLength : 设置文字计数器的最大长度。 从以上方法可以看到,TextInputLayout增加的界面元素主要是三个,分别是位于编辑框左上角的提示文字、位于编辑框左下角的错误文字、位于编辑框右下角的文字计数器。具体的文本输入布局效果如见下:
在Gradle的依赖中添加上com.android.support:design:23.0.0,其中23版本根据编译的android版本来调整对应版本即可
Google I/O 2015 ,谷歌意识到向后兼容是实现material design的重要部分。当然support library,比如appcompat-v4 和 appcompat-v7是解决方案的一部分。
本教程中,我将再次讨论Material Design。Google I/O 2015 对于每一个开发者来说都是一个重大的事件,设计当然也是谈资之一。
PS:在这之前也就是上一篇介绍了MaterialDesign一些滑动删除、标题栏的悬浮效果等,如果没看过第一篇的小火鸡可以看一下,因为这篇是接着上一篇写的,有一些东西上一篇写过了这里就不在重复了(MaterialDesign应用技术一),这篇也是上一篇的升级版,在我们日常写界面的时候,都想简单并且界面美观,这就少不了动画效果,MaterialDesign我们一般用到的动画,里面都有,不用我们自己写,在这个强大的库里,他都能够做什么呢,让我们来简单看一下。 上滑 顶部背景图片缓慢消失,标题悬浮 在标题 上栏加
今天这篇文章应该算是Material Design系列的补充篇,因为这篇文章本来应该放到前面讲的,因为讲的是主题嘛,对于一些状态和颜色的介绍,因为我们一新建一个项目时,系统自带了三个属性的颜色,现在就重点介绍这三个颜色属性的意义和作用。讲明白这个,留着以后讲别的用。 最常用的三个颜色属性 colorPrimary colorPrimaryDark colorAccent 这三个分别代表什么意思呢? colorPrimaryDark 是状态栏底色 colorPrimary 如果你不手动自己去修改toolbar
该项目的用户界面非常简单。它显示了一个欢迎标签(如果有的话,可以很容易地用徽标替换)和两个EditText元素,一个用于用户名,另一个用于密码。布局还包括一个触发登录序列的按钮。背景颜色是漂亮,平坦,浅灰色。
https://github.com/yechaoa/MaterialDesign
零、前言 这是两个比较小的点,放在一起说一下: 沉浸标题栏:现在基本上都用沉浸标题栏了,不然最顶的一小块跟app风格不搭 TextInputLayout:包裹一个EditeText,多用于登陆验
github地址:https://github.com/shuaijia/MaterialDesignProject 添加依赖 TextInputLayout是在Material Design中的,如
Event:事件,可以是任意类型的对象。 Subscriber:事件订阅者,在EventBus3.0之前消息处理的方法只能限定于onEvent、onEventMainThread、onEventBackgroundThread和onEventAsync,他们分别代表四种线程模型。而在EventBus3.0之后,事件处理的方法可以随便取名,但是需要添加一个注解@Subscribe,并且要指定线程模型(默认为POSTING),四种线程模型下面会讲到。 Publisher:事件发布者,可以在任意线程任意位置发送事件,直接调用EventBus的post(Object)方法。可以自己实例化EventBus对象,但一般使用EventBus.getDefault()就好了,根据post函数参数的类型,会自动调用订阅相应类型事件的函数。
MVVM框架出来已经有一段时间了,现在也有很多的项目运用了MVVM框架,因此也不算是很新的东西,但是从个人的角度来说我希望写出来,因为每年都会有新的Android开发工程师进入,一些框架的使用都是封装好的,或者写的很高级,刚开始不容易看懂,因此我的想法是写一个简单易懂的MVVM框架,并且在这个上面去加入Jetpack的组件,当然了,我技术比较菜,大佬要是看见了高抬贵手。
我们在构建MVVM应用的时候数据时双向流动的,比如:用户输入了数据,那么我们的model层的数据也要自动跟着更新或者我们校验了数据,是图层也要给用户反馈;网络请求完成,我们的视图层的数据也要跟着更新。
简介 使用ObservableField<T>来初始化变量,例如:var userPhone=ObservableField<String>() 封装 这时候我们需要对model类进行一层封装才能达到
我们最近宣布了 Material Design Components(MDC)1.1.0 ,这是一个库更新,为您的 Android 应用程序带来了 Material Theming 、新的组件、深色主题和其他令人兴奋的功能。
之前写过Kotlin版的低功耗蓝牙的扫描连接交互的文章,后面我在实践过程了也发现了一些问题,那就是当我从一个设备换到另一个设备时,需要去改动代码才行,这无疑给调试带了很大的困扰,因此我想对这个App做进一步的优化,有可能会做成一个低功耗蓝牙的通用调试App,最好能满足所有的调试需求,当然这是我的一个想法,下面开始吧。
前言 使用输入框时产品常常会有一些需求,比如123456789变成123-456-789或者限制一些字符的输入等等。很多时候都是网上搜索就完事了,但是每次都去搜索有点浪费时间,而且有些也不符合需求。所
在上一篇文章中在HomeActivity中通过装载不同的Fragment显示不同的数据,目前有新闻数据和视频数据,不过光是显示数据,看不到详细内容也不行。其次在这样的页面中要想显示个人信息的话,可以增加一个Fragment或者通过侧滑抽屉来显示,同时既然有个人信息页面,自然就要有登录和注册的关系,之前的登录是个假的,这次我就做的真一点,用一下本地数据库。
学校开了Android课,最后让交一个大作业。正好拿来练练手,记录下思路。也希望能给有需要的朋友们一些帮助。恩,纯小白教程,大神们可以绕路了。
这个兼容库容易和Google之前发布的 Android Support Library 22.1 混淆,两者的区别在于:
Material Design是Google设计的一套视觉语言,将优先的经典的设计原理与科技创新相结合,为开发者提供一套完成视觉和交互设计规范。移动设备是这套设计语言的基础对象,让用户在不同的平台、不同尺寸的设备上能保持一致的体验。 Material Design强调交互上的即时反馈,即对于用户的触控等行为app需要给出即时的反应。同时Material Design要求应用给用户带入感,让用户在使用时是沉浸在当前的应用当中。例如Google给出了沉浸式状态栏等“工具”,希望通过改变StatusBar和NavigationBar来给用户更强的融入感,专注于应用本身提供的内容。 Google从动画、颜色、样式、触控反馈、布局等多个方面给出了Material Design的设计要求。无论是单一的控件还是图文布局,Google都给出了明确的设计说明,有兴趣的同学可以去上方提到的官方链接处做进一步了解。
在上一篇文章中已经了解了数据操作的方式,而数据交互的字节长度取决于我们手机与蓝牙设备的最大支持长度。
so:项目源码:Github----Android_Material_Design_Test你看着办吧
今天,我们将集成 OpenAI API (ChatGPT)来构建一个简单的类似 ChatGPT 的 android 应用程序,让它返回我们想要的图片,本文是上一篇的姊妹篇。
Chat GPT 是当今著名的人工智能工具,就像聊天机器人一样。Chat GPT会回答发送给它的所有查询。今天,我将通过集成 OpenAI API (ChatGPT)构建一个简单的类似 ChatGPT 的 android 应用程序,我们可以在其中提出任何问题并获得答案。
在之前写的Socket通讯中,完成了基本的客户端和服务端的通讯,功能比较简单,本文将对功能进行一次升级。完成后效果图如下:
关于低功耗蓝牙的服务、特性、属性、描述符都已经讲清楚了,而下面就是使用这些知识进行数据的读取、写入、通知等操作。
在上一篇文章中了解了MTU的相关知识以及对于设备操作信息的展示,本篇文章中将增加扫描设备的过滤功能让你更方便的扫描想要找的低功耗蓝牙设备。
现在带浮动标签的输入框也是一个很常见的东西了,在材料设计里面有一个 TextInputLayout 的控件,我们可以用它实现这个效果。但是材料设计控件的样式比较固定,并不能满足我们产品设计的脑洞。这里提供一个用属性动画实现的方法。
Android自5.0后增加了不少新控件,帮助开发者实现了更酷更炫的UI效果。可是对于初学者来说,这些新控件的用法不像老控件那么简单,网上相关的使用介绍也不如老控件那样丰富,种种情况无疑加大了我们学习这些新控件的难度。为此,博主初步整理了Android在5.0和6.0之后的新增控件,及其对应的说明博文,给大家提供一个可资学习和借鉴的索引。 下面是新增控件的索引表格:
前言 React Native出来一年多了,受到各大开发人员的喜爱,但是由于只是专注于View层的开发,因此在很多深层次上还需要结合原生app做一定的兼容,还有就是现在好多控件,如Android中已是系统的控件的sidemenu、checkbox、gridview等,这些在react native中 系统是没有给我们提供的,这时候就借助了第三方开源的力量。 那么我们今天说说在React Native项目开发中常见的一些第三方库。 常见的第三方库 组件篇 CheckBox(多选按钮) react-nati
基于最新的 com.google.android.material:material:1.4.0-alpha01。因为没有release,所以只是介绍了解,以后release了可以直接使用
推荐阅读看完后彻底搞清楚Android中的 Attr 、 Style 、Theme
Material Components for Android(MDC)是从以前的 Design Support Library 库演变而来,是与 AndroidX 来搭配的。考虑到版本兼容和过渡,一开始的 1.0.0 版本与 design 库 28.0.0 是等价的。命名发生了改变从 com.android.support.design到 com.google.android.material 。不过后续更新 design 库就不再更新了,也就是说 design 库就永远的停留在了 1.0.0 这个版本了。
Socket通讯在很多地方都会用到,Android上同样不例外,Socket不是一种协议,而是一个编程调用接口(API),属于传输层,通过Socket,我们才能在Andorid平台上通过 TCP/IP协议进行开发。先看看效果图:
在上一篇文章中,简单的介绍了MVVM框架的成员和简单使用,一个成熟的框架自然是离不开网络访问的,因此文本将通过Retrofit + RxJava去为MVVM框架增加一个网络请求模块。
调用系统打电话、发短信、发邮件、打开网址功能 https://github.com/anarchicknight/react-native-communications 快速检索列表(按首字母) https://github.com/johanneslumpe/react-native-selectablesectionlistview 图表组件 https://github.com/tomauty/react-native-chart 动画组件 https://github.com/oblador/rea
随着Android版本的更新,目前最新的版本是Android 13,并且已经有部分国产手机更新了此版本,对于Android开发者来说,变化其实不那么大,而对于本文章来说就有一些变化。
MainActivity_ViewBinding.png 极坐标绘图2.png 极坐标绘图1.png 极坐标绘图.png 打印日志.png 请求与响应.png post请求.png ajax发送get请求.png React组件.png React组件传值.jpg 《仪式》 webpack打包.png 《诉世书》 create-react-app.png 配置scss.png $el.createText.png 拿到图片路径.png 盒子模型.jpg location.png 子组件修改父组件dom.pn
编辑框EditText算是Android的一个基础控件了,表面上看,EditText只负责接收用户手工输入的文本;可实际上,要把这看似简单的文本输入做得方便易用,并不是一个简单的事情。因为用户可能希望App会更加智能一些,比如用户希望编辑框提供关键词联想功能,又比如用户希望编辑框能够自我纠错等等;所以,Android从设计之初就努力尝试解决这些问题,先是自带了自动完成编辑框AutoCompleteTextView,后来又在Android5.0以后提供了文本输入布局TextInputLayout。 然而,计划赶不上变化,开发工作中总有一些现有控件无法直接实现的需求,就像支付宝的支付密码输入框,在一排方格区域内输入并显示密文密码,每个密文字符之间又有竖线分隔。为直观理解支付密码输入框的业务需求,下面还是先看看该输入框的最终效果图。
序言:由于公司的某些方面原因,LZ最近都处于找工作的状态,年关了,最关键的LZ还只是个没毕业的孩子,所以工作越来越不好找了,到哪里投简历都是动不动就好几年经验,这让我们这些没经验的渣渣还怎么活啊!好了,也不吐槽那么多了,这几天到处去投简历,到处去面试,培训机构,外包公司这些都经历了个遍,总结了一下面试的时候的面试笔试题(如有错误,请及时纠正)
一方面写写自己走过的弯路掉进去的坑,避免以后再犯;另一方面希望通过分享自己的经验教训,与网友互相切磋,从而去芜存菁进一步提升自己的水平。因此博主就想,入门的东西咱就不写了,人不能老停留在入门上;其次是想拾缺补漏,写写虽然小众却又用得着的东西;另外就是想以实用为主,不求大而全,但求小而精;还有就是有的知识点是java的,只是Android开发也会经常遇上,所以蛮记下来。个人的经验总结,难免有遗漏谬误之处,希望网友们不吝指教。
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/50413625
本文首先简介API设计的关键原则,然后通过Kubernetes、Linux、Windows、Android和IOS的API设计所遵循的原则及其各自特有的设计原则来对API设计进行详细举例分析。希望对您学习如何设计一个好的API有所帮助!
领取专属 10元无门槛券
手把手带您无忧上云