短视频平台源码,取验证码 封装全部封装好直接调用
短视频平台源码,取验证码 封装全部封装好直接调用实现的相关代码
1 | public class YanzhengUtil {<br> <br> <br> public static boolean isPhone(String phone, TextView view) {<br> if (TextUtils.isEmpty(phone)) {<br> view.setText( "手机号不能为空" );<br> return false ;<br> }<br> if (!TextUtils.isDigitsOnly(phone)) {<br> view.setText( "手机号格式错误,仅支持纯数字" );<br> ToastUtils.showShort( "手机号格式错误,仅支持纯数字" );<br> <br> return false ;<br> }<br> if (phone.length() != 11 ) {<br> view.setText( "手机号格式错误,应为11位纯数字" );<br> return false ;<br> }<br> return true ;<br> }<br> <br> /**<br> * 设置眼睛显隐bufen<br> *<br> * @param edt<br> * @param ivEyes<br> */ <br> public static void set_mima_vis(EditText edt, ImageView ivEyes) {<br> TransformationMethod type = edt.getTransformationMethod();<br> if (PasswordTransformationMethod.getInstance().equals(type)) {<br> edt.setTransformationMethod(HideReturnsTransformationMethod.getInstance());<br> edt.setSelection(edt.getText().toString().trim().length());<br> // ivEyes.setImageResource(R.drawable.eyes_icon_open);<br> } else {<br> edt.setTransformationMethod(PasswordTransformationMethod.getInstance());<br> edt.setSelection(edt.getText().toString().trim().length());<br>// edPassword.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);<br>// ivEyes.setImageResource(R.drawable.eyes_icon_close);<br> }<br> }<br> <br> <br> /**<br> * 倒计时控件<br> */<br> private static CountDownTimer timer;<br> <br> /**<br> * 从x开始倒计时<br> *@param context 上下文<br> * @param x 执行时间<br> * @param btnHqyzm 控件使用什么类型的控件就替换一下控件类型就可以<br> */<br> public static void startTime(Context context, long x, final TextView btnHqyzm) {<br> if (timer != null) {<br> timer.cancel();<br> }<br> timer = new CountDownTimer(x, 1000) {<br> @Override<br> public void onTick(long millisUntilFinished) {<br> int remainTime = (int) (millisUntilFinished / 1000L);<br> btnHqyzm.setEnabled(false);<br>// btnHqyzm.setBackgroundResource(R.drawable.common_btn_bg2);<br> btnHqyzm.setText(context.getResources().getString(R.string.yhzc_tip502, remainTime));<br> btnHqyzm.setTextColor(ContextCompat.getColor(context, R.color.color_4071FF));<br> }<br> <br> @Override<br> public void onFinish() {<br> btnHqyzm.setEnabled(true);<br>// btnHqyzm.setBackgroundResource(R.drawable.common_btn_bg1);<br> btnHqyzm.setText(context.getResources().getString(R.string.yhzc_tip5));<br> btnHqyzm.setTextColor(ContextCompat.getColor(context, R.color.color_4071FF));<br> }<br> };<br> timer.start();<br> }<br> <br> public static void timer_des() {<br> if (timer != null) {<br> timer.cancel();<br> timer = null;<br> }<br> }<br> <br> /**<br> * EditText获取焦点并显示软键盘<br> */<br> public static void showSoftInputFromWindow(Activity activity, EditText editText) {<br> editText.setFocusable(true);<br> editText.setFocusableInTouchMode(true);<br> editText.requestFocus();<br> activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);<br> }<br> <br> /**<br> * 显示错误提示,并获取焦点<br> *<br> * @param textInputLayout<br> * @param error<br> */<br> public static void showError(TextInputLayout textInputLayout, String error) {<br> textInputLayout.setError(error);<br> textInputLayout.getEditText().setFocusable(true);<br> textInputLayout.getEditText().setFocusableInTouchMode(true);<br> textInputLayout.getEditText().requestFocus();<br> }<br> <br> /**<br> * 验证用户名<br> *<br> * @param account<br> * @return<br> */<br> public static boolean validateAccount(TextInputLayout til_account, String account, String content) {<br> if (StringUtils.isEmpty(account)) {<br> showError(til_account, content);// "用户名不能为空"<br> return false;<br> }<br> return true;<br> }<br> <br> /**<br> * 验证密码<br> *<br> * @param password<br> * @return<br> */<br> public static boolean validatePassword(TextInputLayout til_password, String password, String content) {<br> if (StringUtils.isEmpty(password)) {<br> showError(til_password, content);// "密码不能为空"<br> return false;<br> }<br> <br>// if (password.length() < 6 || password.length() > 18) {<br>// showError(til_password, "密码长度为6-18位");<br>// return false;<br>// }<br> <br> return true;<br> }<br>} |
以上就是 短视频平台源码,取验证码 封装全部封装好直接调用实现的相关代码,更多内容欢迎关注之后的文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现