一、需求
1.设置转盘上的文字
2.减少卡顿
二、实现步骤
设置转盘上的文字
1.首先把写文字的笔设置好
mPaint!!.color = Color.BLACK
mPaint!!.textAlign = Paint.Align.CENTER
mPaint!!.textSize = 35f
2.计算文本的高度
//计算text文本的高度
val fm = mPaint!!.fontMetrics
val textHeight = fm.bottom - fm.top
3.path加圆弧,写成弧状
val path = Path()
path.addArc(rectF, (i - 1) * a + a, a)
canvas.drawTextOnPath(contents[i].tOptionName!!, path, 0f, textHeight + 10, mPaint!!)
减少卡顿
之前比较日期,我需要通过循环找到每一个日期,然后与点击的日期对比
现在,我不直接找到每个需要对比的日期,而是找到范围,之间判断是否在这个范围中,这就省去了很多for循环
例如:我要判断2020年11月11日是否在姨妈来前的三天,假设姨妈是在11月20日
之前:我要通过循环得到11月19日,11月18日,11月17日,然后把三个日期分别和11月11日进行对比
现在:我只要计算11月11日和11月20日相差几天,是不是相差在三天内,如果是,11日就在姨妈前三天,如果不是就否