• Android开发长按某个控件将PopupWindow显示在手指长按的位置处的实现方法


    //Kotlin语法
    class TestActivity:Activity(){   private var touchEvent: MotionEvent? = null   override fun dispatchTouchEvent(event: MotionEvent?): Boolean { if (event?.action == MotionEvent.ACTION_DOWN) {  //重点1:重写Activity的dispatchTouchEvent方法,保存一下按下的event。 touchEvent = event } return super.dispatchTouchEvent(event) }   private fun showPopupWindow() {  //重点2,将PopupWindow显示在window的decorView下,位置为按下的event的rawX和rawY的值。 popupWindow.showAsDropDown(window.decorView, touchEvent?.rawX?.toInt() ?: 0,touchEvent?.rawY?.toInt() ?: 0)
         //重点3:今天突然发现使用window.decorView部分手机有适配问题,改为使用自己App的状态栏ToolBar就可以了(一般每个App都有自己的ToolBar或者自定义的ToolBarView之类的吧)。 } }
  • 相关阅读:
    kmp算法详解
    艾伦.席森.图灵
    gcd详解
    Shortest Prefixes 字典树模板
    Hat's Words 字典树变式
    统计难题 字典树模板
    Phone List 字典树模板
    字典树详解
    Basic Gcd Problem 线性筛
    codeforces 454 D. Little Pony and Harmony Chest(状压dp)
  • 原文地址:https://www.cnblogs.com/yongfengnice/p/11549283.html
Copyright © 2020-2023  润新知