美文网首页
设置悬浮按钮

设置悬浮按钮

作者: 自然之秋 | 来源:发表于2017-07-03 09:09 被阅读9次

    1、清单文件添加权限

    2、调用此方法  initFloatBtn()

    WindowManagerwm;

    WindowManager.LayoutParamswmlp;

    LinearLayoutlinear;

    ImageViewiv;

    private void  initFloatBtn() {

    wm= (WindowManager) getSystemService(WINDOW_SERVICE);

    wmlp=newWindowManager.LayoutParams();

    wmlp.type= WindowManager.LayoutParams.TYPE_SYSTEM_ERROR;

    wmlp.gravity= Gravity.BOTTOM| Gravity.RIGHT;

    wmlp.format= PixelFormat.RGBA_8888;

    wmlp.flags= WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE| WindowManager.LayoutParams.FLAG_FULLSCREEN

    | WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN;

    wmlp.x=10;

    wmlp.y=80;

    wmlp.width=80;

    wmlp.height=80;

    linear=newLinearLayout(getApplicationContext());

    linear.setGravity(Gravity.BOTTOM| Gravity.LEFT);

    //组件

    iv=newImageView(this);//文本

    iv.setImageResource(R.mipmap.add_photo);

    linear.addView(iv);//将textview添加进布局

    wm.addView(linear,wmlp);//窗口管理器添加这个部件

    iv.setOnClickListener(newView.OnClickListener() {

    @Override

    public voidonClick(View v) {

    ToastUtils.StrToast(mContext,"添加相册");

    LogUtils.e(TAG,"WindowManagerWindowManagerWindowManager");

    openChooser();

    }

    });

    }

    @Override

    protected voidonStop() {

    super.onPause();

    LogUtils.e(TAG,"onStop()---onStop()");

    if(wm!=null) {

    wm.removeViewImmediate(linear);

    linear=null;

    }

    }

    @Override

    protected voidonDestroy() {

    super.onDestroy();

    if(wm!=null) {

    wm.removeViewImmediate(linear);

    linear=null;

    }

    }

    相关文章

      网友评论

          本文标题:设置悬浮按钮

          本文链接:https://www.haomeiwen.com/subject/jdlacxtx.html