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

Android开发笔记(三十六)展示类控件

TextView TextView是最基础的文本显示控件了,基本属性text、textColor、textSize、textDirection、textStyle、textAlignment就不多说了...给编辑框注册一个TextWatcher监听(addTextChangedListener方法),当检测到文本发生变化并找到回车换行符时,触发光标跳转操作; 2、保持当前控件不换行,依旧单行显示。...该功能有两种实现方式: 方式一:使用EditText的setSelection方法,示例代码如下: et_next.requestFocus(); et_next.setSelection(et_next.getText...常用的取值说明包括:fitXY表示拉伸图片正好填满视图(图片可能被拉伸变形),fitStart表示拉伸图片使之位于视图上部,fitCenter表示拉伸图片使之位于视图中间,fitEnd表示拉伸图片使之位于视图下部...= null) { mNextView.requestFocus(); if (mNextView instanceof EditText) { EditText et

1.4K30

android短信验证码方案,Android之短信验证码

appkey” /> 4.在src中加入MyApplication类,并且在AndroidManifest.xml文件中将application的name属性设置为src中定义的MyApplication(android...) findViewById(R.id.et_write_phone); etPhoneNum.setText(“”); etPhoneNum.requestFocus(); etPhoneNum.addTextChangedListener...0 成功; 1 错误; 本地: -2 本地网络异常; -3 服务网络异常;-4 解析错误;-5初始化异常 reason 返回信息 成功或错误原因. result 返回结果,JSON格式.错误或者无返回值时为空...code = etCaptchaNum.getText().toString().trim().replace(“\\s*”, “”); /** * 验证短信验证码 * * code 返回码: 服务:...0 成功; 1 错误; 本地: -2 本地网络异常; -3 服务网络异常;-4 解析错误;-5初始化异常 reason 返回信息 成功或错误原因. result 返回结果,JSON格式.错误或者无返回值时为空

10.3K50
您找到你想要的搜索结果了吗?
是的
没有找到

android之编辑框限定范围

登陆界面里我们通常都需要限定用户输入数据的范围,出生日期,密码长度……这些设置我们早已在pc上熟悉得不得了,然而今天我们讲讲如何在android里设置编辑框的范围。...首先,我们知道,android的编辑框是EditText,而EditText有很方便的属性,就是inputType,这里我们可以设置数字,邮箱地址,密码等等的类型。...然后,如果你要设置数值的大小范围或者字符串的长度范围,那就需要我们在代码里面设置了,我们需要为EditText添加TextWatcher监听,该监听最重要的方法就是afterTextChanged,..., s.length(), "100"); else return; } }); 最后,如果我们想改变弹出的软键盘右下角按钮的名称,可以在IME Options里设置,

1.6K30

flutter 输入框组件TextField的实现代码

TextField 顾名思义文本输入框,类似于iOS中的UITextField和Android中的EditText和Web中的TextInput。主要是为用户提供输入文本提供方便。...然后我们为输入框做一些其他的效果,提示文字,icon、标签文字等。...在逻辑上,每当我们点击下面的按钮都会判断用户名密码是否符合要求,并且使用控制清空已经输入的用户名和密码。...当按下一个未完成操作(“next”或“previous”)时,用户的内容被提交给[controller],但不会放弃焦点,因为开发人员可能希望立即将焦点转移到[onsubmit]中的另一个输入小部件。...), ], ), 我在顶层创建了一个交电接点并附加给第二个输入框, 在第一个输入框的onEditingComplete方法中是用 FocusScope.of(context).requestFocus

4.7K11

Android 自定义View小结(重于理解,不作为教程)

他们之间最大的区别就是, 不可用的视图是无法响应onTouch事件的, 2.forcused 表示当前视图是否获得到焦点, 通常情况下有两种方法可以让视图获得焦点, 即通过键盘的上下左右键切换视图, 以及调用requestFocus...()方法,但是现在基本上没有带键盘的手机了, 因此只有一个请求焦点的方法了,而且requestfocus也不一定可以让视图获得焦点, 他会有一个布尔值的返回值, 如果返回true说明获取成功了, 返回false...说明获得焦点失败, 一般只有视图在focusable和 focusable in touch mode 同时成立的情况下才能成功的获取焦点,比如说,Edittext。...表示当前视图是否处于选中状态, 一个界面当中可以有多个视图处于选中状态, 调用setSelected()方法能够改变视图的选中状态, 传入True表示选中, 传入False表示未选中, 有一个状态选择(...就是视图全部由我们自己去绘制, 最重要的就是onDraw方法,,调用invalidate()方法会导致视图进行重绘,因此onDraw()方法在稍后就将会得到调用, 3.2 组合控件 组合控件的意思就是,我们并不需要自己去绘制视图上显示的内容

29810

Android消息推送:手把手教你集成小米推送

今天,我将手把手教大家如何在你的应用里集成小米推送 该文档基于小米推送官方Demo,并给出简易推送Demo 看该文档前,请先阅读我写的另外两篇文章: 史上最全解析Android消息推送解决方案...作用:当客户端向服务发送注册push、设置alias、取消注册alias、订阅topic、取消订阅topic等等命令后,从服务返回结果。 b. 参数说明: ?...1.2.3 MainActivity 用于给用户设置标识,别名、标签、账号等等 MainActivity.java public class MainActivity extends Activity...= AllLog + log + "\n\n"; } mLogView.setText(AllLog); } } 总结 根据需求对不同用户设置不同的推送标识,别名...总结 相信大家已经非常了解如何在你的Android应用中集成小米推送 接下来,我会继续介绍具体如何在Android中关于推送的消息,请看 史上最全解析Android消息推送解决方案 Android

4.4K20

从源码出发浅析 Android TV 的焦点移动原理 (上篇)

相对于手机上用手指点击屏幕产生的Click事件, 在使用Android TV的过程中,遥控是一个主流的操作工具,通过点击遥控的方向键来控制焦点的移动。...当焦点移动到目标控件上之后,按下遥控的确定键,才会触发一个Click事件,进而去做下一步的处理。焦点的移动如下图所示。...遇到的问题: 尽管有了官方文档中提到的基础用法,但是在进行Android TV开发的过程中,还是经常会遇到一些焦点方面的问题或者疑问, “明明指定了焦点id,焦点却跑丢了” “onKeyDown里居然截获不到按键事件...通过View的focusSearch方法找到下一个获取焦点的View,然后调用requestFocus 那focusSearch是如何找到下一个焦点视图的呢?...ViewPager等场景),但是这个方法只会返回在View树中节点范围最近的一个视图,这就是为什么有时候看似指定了focusId,但实际上焦点却丢失的原因,因为焦点跑到了另一个“意想不到”的相同id的视图上

7.4K10

Android开发笔记(九十八)往图片添加部件

然后给该布局容器添加触摸监听,在按下时创建并加入一个编辑框EditText,并输入文本。最后结束添加,从布局容器的绘图缓存中获取位图,并保存为图片文件。...2、禁用绘图缓存的操作要延时执行,因为禁用绘图缓存会回收位图资源,如果这时在页面上展示该位图,就会报错位图已回收。 下面是给图片添加文本的效果截图: ?...mHandler.postDelayed(mResetCache, 200); } else if (v.getId() == R.id.btn_reset_text) { for (EditText...et_text; private LinkedList etList = new LinkedList(); @TargetApi(Build.VERSION_CODES.JELLY_BEAN...LayoutParams要在addView之后设置才有效 et_text.setLayoutParams(params); et_text.setBackground(null); et_text.requestFocus

1K30

【随笔】android开发的学习路线

3.面向对象的抽象,封装,继承,多态,类与对象,对象初始化和回收;构造函数、this关键字、方法和方法的参数传递过程、static关键字、内部类,Java的垃极回收机制,Javadoc介绍。 ...11.多线程原理:如何在程序中创建多线程(Thread、Runnable),线程安全问题,线程的同步,线程之间的通讯、死锁。  12.Socket网络编程。...5.Tomcat服务的应用配置。  6.WebService服务配置应用。...2、Android初级控件的使用: TextView控件的使用 Button控件的使用方法 EditText控件的使用方法 ImageView的使用方法 RadioButton的使用方法 Checkbox...解析服务响应数据的方法 使用POST方法向服务提交数据的实现方法 向服务提交非文本数据的实现方法 使用Http协议实现多线程下载 使用Http协议实现断点续传 2、Android数据存储技术

75340

Android之 学习路线

3.面向对象的抽象,封装,继承,多态,类与对象,对象初始化和回收;构造函数、this关键字、方法和方法的参数传递过程、static关键字、内部类,    Java的垃极回收机制,Javadoc介绍。 ...11.多线程原理:如何在程序中创建多线程(Thread、Runnable),线程安全问题,线程的同步,线程之间的通讯、死锁。  12.Socket网络编程。...5.Tomcat服务的应用配置。  6.WebService服务配置应用。...2、Android初级控件的使用: TextView控件的使用 Button控件的使用方法 EditText控件的使用方法 ImageView的使用方法 RadioButton的使用方法 Checkbox...解析服务响应数据的方法 使用POST方法向服务提交数据的实现方法 向服务提交非文本数据的实现方法 使用Http协议实现多线程下载 使用Http协议实现断点续传 2、Android数据存储技术

62410

Android开发高级进阶——多线程(实现简单下载

Runnable Thread和Runnable的使用需要用到Handler,Handler的用法可以参考之前的文章:Android应用界面开发——Handler(实现倒计时) 这里通过实现一个简单的下载来学习...这个下载就一个界面,包含一个输入框,一个进度条,用来显示下载进度,用来输入下载地址,一个按钮,用来开始下载。 界面代码如下:activity_main.xml <?...这里通过实现一个简单的下载来学习AsyncTask。 这个下载就一个界面,包含一个输入框,用来输入下载地址,一个按钮,用来开始下载。 界面代码如下:activity_download.xml <?...缺乏更多功能,定时执行、定期执行、线程中断。 ThreadPoolExecutor——线程池(多线程的管理者) 引入的好处: 提升性能,创建和消耗对象费时费CPU资源。...线程池的分类: new CachedThreadPool:创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。

86720

Android自定义processor实现bindView功能的实例

编译时注解的核心依赖APT(Annotation Processing Tools)实现,原理是在某些代码元素上(类型、函数、字段等)添加注解,在编译时编译会检查AbstractProcessor的子类...下边我们将学习如何在Android Studio中通过编译时注解生成java文件。 二、概念 注解处理是一个在javac中的,用来编译时扫描和处理的注解的工具。...你可以为特定的注解,注册你自己的注解处理。 注解处理可以生成Java代码,这些生成的Java代码会组成 .java 文件,但不能修改已经存在的Java类(即不能向已有的类中添加方法)。...类使用了定义的注解: @LActivity public class TestProcessorActivity extends Activity { @LView(R.id.et_input) EditText...public static void bindView(TestProcessorActivity activity) { activity.inputView = (android.widget.EditText

63020
领券