短視訊app原始碼,連麥時最小化出現可移動懸浮窗
短視訊app原始碼,連麥時最小化出現可移動懸浮窗實現的相關程式碼
新建懸浮窗Service
新建懸浮窗Service FloatWinfowServices,因為我們使用的BindService,我們在onBind方法中初始化service中的佈局
override fun onBind(intent: Intent): IBinder? { initWindow() //懸浮框點選事件的處理 initFloating() return MyBinder() }
service中我們通過WindowManager來新增一個佈局顯示。
/** * 初始化視窗 */ private fun initWindow() { winManager = application.getSystemService(Context.WINDOW_SERVICE) as WindowManager //設定好懸浮窗的引數 wmParams = params // 懸浮窗預設顯示以左上角為起始座標 wmParams!!.gravity = Gravity.LEFT or Gravity.TOP //懸浮窗的開始位置,因為設定的是從左上角開始,所以螢幕左上角是x=0;y=0 wmParams!!.x = winManager!!.defaultDisplay.width wmParams!!.y = 210 //得到容器,通過這個inflater來獲得懸浮窗控制元件 inflater = LayoutInflater.from(applicationContext) // 獲取浮動視窗檢視所在佈局 mFloatingLayout = inflater!!.inflate(R.layout.remoteview, null) // 新增懸浮窗的檢視 winManager!!.addView(mFloatingLayout, wmParams) }
懸浮窗的引數主要設定懸浮窗的型別為
WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY
8.0 以下可設定為:
wmParams!!.type = WindowManager.LayoutParams.TYPE_PHONE
程式碼如下所示:
private //設定window type 下面變數2002是在螢幕區域顯示,2003則可以顯示在狀態列之上 //設定可以顯示在狀態列上 //設定懸浮視窗長寬資料 val params: WindowManager.LayoutParams get() { wmParams = WindowManager.LayoutParams() if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { wmParams!!.type = WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY } else { wmParams!!.type = WindowManager.LayoutParams.TYPE_PHONE } wmParams!!.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE or WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL or WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN or WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR or WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH wmParams!!.width = WindowManager.LayoutParams.WRAP_CONTENT wmParams!!.height = WindowManager.LayoutParams.WRAP_CONTENT return wmParams }
當點選懸浮窗的時候回到Activity2頁面,並且懸浮窗消失,所以我們只需要給懸浮窗新增點選事件
linearLayout!!.setOnClickListener { startActivity(Intent(this@FloatWinfowServices, Main2Activity::class.java)) }
以上就是短視訊app原始碼,連麥時最小化出現可移動懸浮窗實現的相關程式碼, 更多內容歡迎關注之後的文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2853796/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 短視訊系統原始碼,關於懸浮窗的縮放、拖動等應用原始碼
- 直播軟體原始碼,設定懸浮窗並可進行任意位置的移動原始碼
- 直播原始碼,懸浮窗滾動漸變色效果原始碼
- 短視訊app原始碼,提示以按鈕彈窗的形式實現APP原始碼
- 懸浮窗的一種實現 | Android懸浮窗Window應用Android
- Android 攝像頭預覽懸浮窗,可拖動,可顯示在其他app上方AndroidAPP
- app直播原始碼,收到訊息時出現彈窗APP原始碼
- 短視訊直播原始碼,視訊計時效果,可隨時按鍵暫停原始碼
- Android 懸浮窗Android
- Android 輔助許可權與懸浮窗Android
- 直播短視訊原始碼短視訊APP短視訊帶貨系統多商戶直播原始碼APP
- QPM 之懸浮窗設定資訊
- 短視訊app原始碼,實現原生js圖片預覽效果APP原始碼JS
- 短視訊程式原始碼,PageSlider實現滑動頁面原始碼IDE
- 【轉載】使用WindowManage實現Android懸浮窗Android
- 非侵入式無許可權應用內懸浮窗的實現
- 直播平臺製作,Android 懸浮窗延時5秒返回APP問題AndroidAPP
- Android懸浮窗的學習Android
- Android 懸浮窗 System Alert WindowAndroid
- 直播app開發,推出語音聊天室時保持懸浮窗存在狀態APP
- 短視訊帶貨原始碼,觀看視訊時雙擊放大原始碼
- 短視訊app原始碼,點選檢視圖片,雙指放大APP原始碼
- 在相親交友原始碼中實現視訊連麥直播需要哪些步驟?原始碼
- 滑鼠懸浮連結動畫高亮效果動畫
- 移動短影片直播開發,短影片原始碼搭建社交平臺原生APP原始碼APP
- 直播app系統原始碼,動態遇到視訊時開始自動播放APP原始碼
- 短視訊直播原始碼,滾動定位,規定每次滑動時下滑多少格原始碼
- 滑鼠懸浮連結底部出現橫線
- 有視訊APP上線,一對一交友原始碼和抖音短視訊原始碼穩步前行APP原始碼
- 如何獲取Vivo系統的懸浮窗許可權狀態
- 視訊直播原始碼,提醒類彈窗,到時間後自動彈出原始碼
- php短視訊原始碼,點贊時會有大拇指動畫飄起PHP原始碼動畫
- Android端的短視訊開發,我們該如何快速實現移動端短視訊功能?Android
- 仿抖音短視訊APP原始碼,重新整理螢幕計時,重置系統休眠計時APP原始碼
- 微信小程式懸浮可拖動客服元件微信小程式元件
- QPM 之懸浮窗助力效能優化優化
- Android仿微信文章懸浮窗效果Android
- Android 攝像頭預覽懸浮窗Android