当前位置: 首页 > news >正文

凤岗建设网站管理咨询公司是做什么

凤岗建设网站,管理咨询公司是做什么,什么可以放置网站内容,微网站建设服务原标题#xff1a;Android 自定义控件 - 仿支付宝数字键盘简介在一些带有支付功能的 App 中#xff0c;输入的密码一般只能是纯数字#xff0c;虽然我们可以指定 EditText 输入框只能输入数字#xff0c;但是为了提供用户的使用体验#xff0c;我们往往更倾向于使用自定义…原标题Android 自定义控件 - 仿支付宝数字键盘简介在一些带有支付功能的 App 中输入的密码一般只能是纯数字虽然我们可以指定 EditText 输入框只能输入数字但是为了提供用户的使用体验我们往往更倾向于使用自定义的纯数字键盘。本文效果实现步骤集成系统的 KeyBoardView 类在初始化时初始化键盘布局设置 KeyBoard 对象。实现 OnKeyboardActionListener 接口处理按键交互事件。根据需求绘制按键背景和按键图标。设置监听器将输入的内容回调给调用方。键盘布局在 res/xml/ 目录下创建 xml 文件key_password_number.xmlandroid:horizontalGap1dpandroid:keyHeight9%pandroid:keyWidth33.3333%pandroid:verticalGap1dpandroid:codes49android:keyLabel1/android:codes50android:keyLabel2/android:codes51android:keyLabel3/android:codes52android:keyLabel4/android:codes53android:keyLabel5/android:codes54android:keyLabel6/android:codes55android:keyLabel7/android:codes56android:keyLabel8/android:codes57android:keyLabel9/android:codes-10android:keyLabel/android:codes48android:keyLabel0/android:codes-5android:keyLabel/继承 KeyBoardViewpublicclassPwdKeyboardViewextendsKeyboardViewimplementsKeyboardView.OnKeyboardActionListener{privatestaticfinalString TAG PwdKeyboardView;privatestaticfinalintKEY_EMPTY - 10;privateintdelKeyBackgroundColor 0xffcccccc;privateRect keyIconRect;publicPwdKeyboardView(Context context, AttributeSet attrs){super(context, attrs);Log.d(TAG, PwdKeyboardView: two params);init(context);}publicPwdKeyboardView(Context context, AttributeSet attrs, intdefStyleAttr){super(context, attrs, defStyleAttr);Log.d(TAG, PwdKeyboardView: three params);init(context);}privatevoidinit(Context context){Keyboard keyboard newKeyboard(context, R.xml.key_password_number); // 初始化 keyboardsetKeyboard(keyboard);setEnabled( true);setFocusable( true);setPreviewEnabled( false); // 设置点击按键不显示预览气泡setOnKeyboardActionListener( this);}/*** 重新绘制删除按键和空白键** paramcanvas*/OverridepublicvoidonDraw(Canvas canvas){super.onDraw(canvas);List keys getKeyboard().getKeys();for(Keyboard.Key key : keys) {if(key.codes[ 0] KEY_EMPTY) {// 绘制空白键背景drawKeyBackground(key, canvas, delKeyBackgroundColor);}if(key.codes[ 0] Keyboard.KEYCODE_DELETE) {// 删除删除按键背景drawKeyBackground(key, canvas, delKeyBackgroundColor);// 绘制删除按键图标drawKeyIcon(key, canvas, getResources().getDrawable(R.drawable.ic_delete));}}}/*** 绘制按键的背景** paramkey* paramcanvas* paramcolor*/privatevoiddrawKeyBackground(Keyboard.Key key, Canvas canvas, intcolor){ColorDrawable drawable newColorDrawable(color);drawable.setBounds(key.x, key.y, key.x key.width, key.y key.height);drawable.draw(canvas);}/*** 绘制按键的 icon** paramkey* paramcanvas* paramiconDrawable*/privatevoiddrawKeyIcon(Keyboard.Key key, Canvas canvas, Drawable iconDrawable){if(iconDrawable null) {return;}// 计算按键icon 的rect 范围if(keyIconRect null|| keyIconRect.isEmpty()) {// 得到 keyicon 的显示大小因为图片放在不同的drawable-dpi目录下显示大小也不一样intintrinsicWidth iconDrawable.getIntrinsicWidth();intintrinsicHeight iconDrawable.getIntrinsicHeight();intdrawWidth intrinsicWidth;intdrawHeight intrinsicHeight;// 限制图片的大小防止图片按键范围if(drawWidth key.width) {drawWidth key.width;// 此时高就按照比例缩放drawHeight ( int) (drawWidth * 1.0f/ intrinsicWidth * intrinsicHeight);} elseif(drawHeight key.height) {drawHeight key.height;drawWidth ( int) (drawHeight * 1.0f/ intrinsicHeight * intrinsicWidth);}// 获取图片的 x,y 坐标,图片在按键的正中间intleft key.x key.width / 2- drawWidth / 2;inttop key.y key.height / 2- drawHeight / 2;keyIconRect newRect(left, top, left drawWidth, top drawHeight);}if(keyIconRect ! null !keyIconRect.isEmpty()) {iconDrawable.setBounds(keyIconRect);iconDrawable.draw(canvas);}}OverridepublicvoidonPress(intprimaryCode){}OverridepublicvoidonRelease(intprimaryCode){}/*** 处理按键的点击事件*/OverridepublicvoidonKey(intprimaryCode, int[] keyCodes){Log.d(TAG, onKey: primaryCode primaryCode , keyCodes Arrays.toString(keyCodes));if(primaryCode KEY_EMPTY) {return;}if(listener ! null) {if(primaryCode Keyboard.KEYCODE_DELETE) {listener.onDelete();} else{listener.onInput(String.valueOf(( char) primaryCode));}}}OverridepublicvoidonText(CharSequence charSequence){}OverridepublicvoidswipeLeft(){}OverridepublicvoidswipeRight(){}OverridepublicvoidswipeDown(){}OverridepublicvoidswipeUp(){}publicinterfaceOnKeyListener{// 输入回调voidonInput(String text);// 删除回调voidonDelete();}privateOnKeyListener listener;publicvoidsetOnKeyListener(OnKeyListener listener){this.listener listener;}}使用 PwdKeyboardViewandroid:id id/key_boardandroid:layout_width match_parentandroid:layout_height wrap_contentandroid:background #919191android:keepScreenOn trueandroid:keyBackground drawable/selector_key_boardandroid:keyTextColor android:color/blackandroid:keyTextSize 26spandroid:shadowRadius 0/ 显示结果为完整代码https://github.com/xing16/PwdKeyboardView返回搜狐查看更多责任编辑
http://www.zqtcl.cn/news/272032/

相关文章:

  • wap网站搭建北京北京网站建设
  • 放心的网站设计制作免费做logo设计的网站
  • 温州专业手机网站制作多少钱移动商城 网站建设方法方式
  • 周口网站开发wordpress
  • 如何查网站的备案号玉环在哪里做网站
  • 网站开发什么叫前端后端seo研究中心晴天
  • 邢台建筑类的建设网站代刷网站只做软件下载
  • 关于旅游的网站建设目的食品网站建设的目的
  • 开发php网站开发太湖网站建设推荐秒搜科技
  • 90设计网站怎么绑定手机号淘宝搜索排名
  • 无锡自助做网站哪些编程语言适合网站开发
  • 蒲城网站建设wzjseo北京专业推广公司
  • 阳春做网站外贸建站推广公司
  • 哪个网站的课件做的好源码之家关闭了
  • 各大网站热搜榜排名嵊州网站
  • 在哪找做网站的镇江网页设计工作室
  • 做网站的是干嘛的百度推广的几种方式
  • 临沧网站建设用eclipse做jsp网站
  • 做物流运输网站电话做网站看
  • 山东公司网站推广优化什么网站做宣传好
  • 企业网站模板设计外网vp(永久免费)加速器下载
  • 消费者联盟网站怎么做中山网站建设案例
  • 郑州市多商家网站制作公司网站建设要学多少课程
  • 现在网站开发模式淄博网站建设设计公司
  • 瑶海合肥网站建设东莞网站优化多少钱
  • pc蛋蛋游戏体验网站建设大型门户网站建设效果好吗
  • 昆明网站建设制作汽车之家官网网页版入口
  • 诸城建设局网站免费的创建个人网站
  • 网站建设工作下步打算上海搬家公司电话查询
  • 如何将自己做的网站推广出去大型网站方案