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

工信网站投诉系统2023网页设计十大品牌

工信网站投诉系统,2023网页设计十大品牌,企业管理软件公司排名,网站建设前的市场分析怎么写项目需求 在界面上创建一个悬浮窗&#xff0c;可以自由的移动这个悬浮窗 需求解决 1.添加权限 <uses-permission android:name"android.permission.SYSTEM_ALERT_WINDOW"/>2.请求权限 从 Android 6.0 (API 23) 开始&#xff0c;应用需要动态请求显示悬浮窗…
项目需求

在界面上创建一个悬浮窗,可以自由的移动这个悬浮窗

需求解决

1.添加权限

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>

2.请求权限
从 Android 6.0 (API 23) 开始,应用需要动态请求显示悬浮窗的权限。例如,可以在 MainActivity 中请求权限:

public class MainActivity extends AppCompatActivity {private static final int OVERLAY_PERMISSION_REQUEST_CODE = 1234;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {if (!Settings.canDrawOverlays(this)) {Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,Uri.parse("package:" + getPackageName()));startActivityForResult(intent, OVERLAY_PERMISSION_REQUEST_CODE);} else {// 权限已经授予,启动悬浮窗服务startFloatingWindowService();}} else {// 系统版本低于6.0,不需要请求权限,直接启动悬浮窗服务startFloatingWindowService();}}@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);if (requestCode == OVERLAY_PERMISSION_REQUEST_CODE) {if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {if (Settings.canDrawOverlays(this)) {// 权限授予,启动悬浮窗服务startFloatingWindowService();} else {// 权限未授予,提示用户// TODO: 处理权限未授予情况}}}}private void startFloatingWindowService() {Intent intent = new Intent(MainActivity.this, FloatingWindowService.class);startService(intent);}
}
  1. 创建悬浮窗服务
    实现一个服务(FloatingWindowService),它将负责创建和管理悬浮窗视图。
public class FloatingWindowService extends Service {private WindowManager windowManager;private View floatingView;public FloatingWindowService() {}@Nullable@Overridepublic IBinder onBind(Intent intent) {return null;}@Overridepublic void onCreate() {super.onCreate();windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);floatingView = inflater.inflate(R.layout.floating_window, null);final WindowManager.LayoutParams params = new WindowManager.LayoutParams(WindowManager.LayoutParams.WRAP_CONTENT,WindowManager.LayoutParams.WRAP_CONTENT,WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY,WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,PixelFormat.TRANSLUCENT);// 初始位置params.x = 0;params.y = 0;windowManager.addView(floatingView, params);// 使悬浮窗可拖动floatingView.setOnTouchListener(new View.OnTouchListener() {private int initialX;private int initialY;private float initialTouchX;private float initialTouchY;@Overridepublic boolean onTouch(View v, MotionEvent event) {switch (event.getAction()) {case MotionEvent.ACTION_DOWN:initialX = params.x;initialY = params.y;initialTouchX = event.getRawX();initialTouchY = event.getRawY();return true;case MotionEvent.ACTION_MOVE:params.x = initialX + (int) (event.getRawX() - initialTouchX);params.y = initialY + (int) (event.getRawY() - initialTouchY);windowManager.updateViewLayout(floatingView, params);return true;}return false;}});}@Overridepublic void onDestroy() {super.onDestroy();if (floatingView != null) windowManager.removeView(floatingView);}
}
  1. 创建悬浮窗布局
    在 res/layout 目录下创建一个名为 floating_window.xml 的布局文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="wrap_content"android:layout_height="wrap_content"android:background="#80000000"android:orientation="vertical"android:padding="10dp"><TextViewandroid:id="@+id/textView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="CSDN -> 我又来搬代码了"android:textColor="#FFFFFF" /></LinearLayout>

注意:要记得在注册清单文件注册服务

        <serviceandroid:name=".service.FloatingWindowService"android:enabled="true"android:exported="true" />

实现效果
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
这个可以随意拖动。

http://www.yayakq.cn/news/235707/

相关文章:

  • 在线A视频网站 一级A做爰片如何在抖音上投放广告
  • 做淘宝门头的网站企业门户网站建设方案书
  • 龙之向导外贸网站河源建网站
  • html5响应式网站建设平台龙岗做网站多少钱
  • 网站动图是怎么做的上海icp新增网站
  • 网站asp设计作品律所网站建设要求书
  • seo站外优化最主要的是什么网站建公司简介
  • 网站基础维护网站做我女朋友
  • 网站建设分金手指专业三十做软装设计能用到的网站有哪些
  • 哈尔滨网站建设策划方案镇江丹阳
  • 做网站上传的程序在哪里下载wordpress个性评论框
  • 网站侧导航怎么样免费给网站做优化
  • 第一次和别人女友做网站东莞做网站贴吧
  • 江苏专业做网站的公司哪家好视频上传网站如何做
  • 从网络全角度考量_写出建设一个大型电影网站规划方案私域运营软件
  • 网站建设淘宝店铺模板做淘宝客网站php
  • 在线crm网站本地生活服务网站怎么做
  • 马鞍山建设银行网站电子商务网站规划与设计
  • 国外免费网站域名服务器入口app和微网站的对比
  • 你需要网站建设大余做网站建设
  • 长沙建设网站制作婚纱网站设计图
  • 枣阳建设局网站首页南京做网站工作室
  • 苏州住房和城乡建设局网站学生个人网页制作
  • 科技类网站源码济南最新消息
  • 制作游戏网站公司网站建设培训厦门
  • discuz做门户网站如何建设局域网内部网站
  • 网站文件app企业服务公司起名
  • 建网站都用什么字体wordpress 登陆不跳转
  • 建站平台功能结构图做 淘宝客最大的网站是叫什么
  • 中国电信备案网站怎么做网站发货