问题描述
想要在触摸第一个 TextView 时第二个 TextView 拖动停止 它将与第二个 TextView 位于同一位置 请输入此问题的代码 对不起,因为我英语不好
class MainActivity : AppCompatActivity() {
val textView1: TextView by lazy { findViewById(R.id.textView1) }
val textView2: TextView by lazy { findViewById(R.id.textView2) }
var layout: ConstraintLayout? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
layout = findViewById<View>(R.id.linear) as ConstraintLayout
var otutch = object : View.OnTouchListener {
var prevX = 0
var prevY = 0
override fun onTouch(v: View?,e: MotionEvent?): Boolean {
val par = v?.layoutParams as ConstraintLayout.LayoutParams
when (e?.action) {
MotionEvent.ACTION_DOWN -> {
prevX = e.rawX.toInt()
prevY = e.rawY.toInt()
par.bottomMargin = -2 * v.height
par.rightMargin = -2 * v.width
v.layoutParams = par
return true
}
MotionEvent.ACTION_MOVE -> {
par.topMargin += e.rawY.toInt() - prevY
prevY = e.rawY.toInt()
par.leftMargin += e.rawX.toInt() - prevX
prevX = e.rawX.toInt()
v.layoutParams = par
return true
}
MotionEvent.ACTION_UP -> {
par.topMargin += e.rawY.toInt() - prevY
par.leftMargin += e.rawX.toInt() - prevX
v.layoutParams = par
return true
}
}
return false
}
}
textView1.setonTouchListener(otutch)
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)