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

在元典公司做网站有合同吗新闻app开发公司

在元典公司做网站有合同吗,新闻app开发公司,电子商务网站开发的基本原则?,建外贸网站公司SeekBar 在开发中并不陌生,默认的SeekBar是不显示进度的,当然用吐司或者文案在旁边实时显示也是可以的,那能不能移动的时候才显示,默认不显示呢,当然网上花哨的三方工具类太多了,但是我只是单纯的想在SeekBar的基础上去添加一个可以跟随移动显示的气泡而…

SeekBar 在开发中并不陌生,默认的SeekBar是不显示进度的,当然用吐司或者文案在旁边实时显示也是可以的,那能不能移动的时候才显示,默认不显示呢,当然网上花哨的三方工具类太多了,但是我只是单纯的想在SeekBar的基础上去添加一个可以跟随移动显示的气泡而已~

先看一下效果:
在这里插入图片描述
在这里插入图片描述
这篇文章可能会满足你的需求
1.原生SeekBar使用,无需重写
2.改动量少,不会对控件有任何影响
3.使用灵活, Utils使用,复制粘贴即可使用

先说一下原理吧:
1.首先最最基础的就是怎么样在不做到对原有控件产生影响的情况下去显示呢?
答: PopupWindow,它只需要拿到对应的目标控件即可指定显示位置
2.如何去跟随移动呢?
答:PopupWindow本身不会动态移动,只需要在该弹窗里面设置一个控件,让该控件移动即可

具体实现
拿到控件,用PopupWindow显示在该控件附近,根据SeekBar的进度,动态设置该弹窗里面子控件的位置

使用

这里是SeekBar移动监听,在这里的三个方法加上对应的方法即可

        mDataBind.controlVolumeSeekbar.setOnSeekBarChangeListener(object: SeekBar.OnSeekBarChangeListener{override fun onProgressChanged(seekBar: SeekBar?, progress: Int, fromUser: Boolean) {//滑块移动SeekBarPopUtils.move(progress,seekBar!!)}override fun onStartTrackingTouch(seekBar: SeekBar?) {//滑块按下SeekBarPopUtils.showPop(seekBar!!)}override fun onStopTrackingTouch(seekBar: SeekBar?) {//滑块松开SeekBarPopUtils.dismiss()}})

SeekBarPopUtils 代码

注意,Kotlin写的,新建文件的时候要建Kotlin文件

/*** SeekBar移动时弹出对应的气泡加数字*/
@SuppressLint("StaticFieldLeak")
object SeekBarPopUtils {private var popWin: PopupWindow? = nullprivate var clPopPar: ConstraintLayout? = nullprivate var tvPopTxt: TextView? = nullfun showPop(seekBar: SeekBar){popWin = PopupWindow()val mPopView = LayoutInflater.from(BaseApplication.getContext()).inflate(R.layout.item_popup_win,null,false)clPopPar = mPopView.findViewById<ConstraintLayout>(R.id.cl_pop_par)tvPopTxt = mPopView.findViewById<TextView>(R.id.tv_pop_txt)popWin?.contentView = mPopViewpopWin?.height = AppHelper.dp2px(30)popWin?.width = seekBar.widthpopWin?.showAsDropDown(seekBar,0,-(AppHelper.dp2px(30) + popWin!!.height))}fun move(progress: Int,seekBar: SeekBar){val tvPopWidth = AppHelper.dp2px(40)val params: ConstraintLayout.LayoutParams = ConstraintLayout.LayoutParams(tvPopWidth, AppHelper.dp2px(30))params.startToStart = clPopPar!!.idparams.marginStart = (seekBar.width - tvPopWidth)/100 * progress + tvPopWidth/3tvPopTxt?.layoutParams = paramstvPopTxt?.text = progress.toString()}fun dismiss(){popWin?.dismiss()popWin = nullclPopPar = nulltvPopTxt = null}}

item_popup_win 代码

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayoutandroid:id="@+id/cl_pop_par"xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="30dp"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"><TextViewandroid:id="@+id/tv_pop_txt"android:layout_width="@dimen/dimen_40"android:layout_height="match_parent"android:gravity="center"app:layout_constraintStart_toStartOf="parent"android:background="@drawable/bg_ffffff_12"android:textSize="@dimen/sp_16"android:textColor="@color/black"tools:text = "999"/></androidx.constraintlayout.widget.ConstraintLayout>

AppHelper.dp2px

    fun dp2px(dpVal: Int): Int {return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,dpVal.toFloat(),BaseApplication.getContext().resources.displayMetrics).toInt()}
http://www.yayakq.cn/news/234372/

相关文章:

  • 创建一个网站需要多少钱windows云桌面
  • 网站建设有哪些优势自动发帖软件
  • 青岛网站建设公商丘市网
  • 付网站首期合同款怎么做分录可视化域名网站模块被删了
  • 凡科做的网站打不开网站建设与管理教程
  • 郑州汉狮做网站费用命理网站开发
  • 都昌县建设局网站六安手机网站建设
  • 公司网站的维护网站开发语言入门
  • 高端网站制作价格义乌进货网平台
  • 做网站留后门是怎么回事建站企业网站
  • 如何在微信公众号内部做网站u钙网免费设计文字头像
  • 牡丹江市建设局网站怎么样让网站网址有图标
  • 哔哩哔哩网页版搜索不了优化大师百科
  • 哪家网站设计好宣传手册设计
  • 视觉营销网站成都好玩还是重庆好玩
  • 建设工程指数网站做学术用的网站
  • 帝国cms能做手机网站吗做电商没几个能赚钱的
  • 公众号自己做电影网站吗网站推广的四个阶段包括
  • 个人网站推广方法厦门app网站设计
  • 企业网站建设哪家正规重庆重庆网站建设公司
  • 域名怎么做网站内容徐州网站定制公司
  • 化学药品购买网站优化网站定制
  • 网站出现弹窗代理网页游戏加盟
  • 外贸网站建设行业发展情况网站开发电脑配置要求
  • 手机网站开发在pc端福州网页模板建站
  • 做网站费用怎么记分录工厂采购信息网
  • 厦门网站建设网络推广海淀中小企业网站开发
  • ASP网站建设招聘做暧暧网站在线观看
  • 网站建设感想网站定制 北京
  • 网站做接口到app价格用PS怎么做网站界面