zoukankan      html  css  js  c++  java
  • 悬浮按钮

    效果图

    //将dp转换为px
    public static int dip2px(Context context, float dpValue) {
        final float scale = context.getResources().getDisplayMetrics().density;
        return (int) (dpValue * scale + 0.5f);
    }
    
    //浮动图片监听
    private void initListener() {
        //弹出对话框
        jianwen.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                View view = LayoutInflater.from(getActivity()).inflate(R.layout.quick_layout, null);
                bbs = (TextView) view.findViewById(R.id.bbs);
                dailyattendance = (TextView) view.findViewById(R.id.dailyattendance);
                Jump.jumpToWeb(getActivity(), bbs, bbs.getText().toString(), Contents.MINE_LUNTAN_URL, false);
                Jump.jumpToWeb(getActivity(), dailyattendance, dailyattendance.getText().toString(), Contents.MINE_REGISTRATION_URL, false);
                
                AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
                builder.setView(view);
                AlertDialog dialog = builder.create();
                Window window = dialog.getWindow();
                WindowManager.LayoutParams attributes = window.getAttributes();
                attributes.alpha = 0.6f;    //设置对话框透明度
                attributes.gravity = Gravity.BOTTOM;     //设置对话框的位置
                attributes.width = LinearLayout.LayoutParams.MATCH_PARENT;
                window.setAttributes(attributes);
                dialog.show();
            }
        });
    
    
        //移动浮动图片
        jianwen.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                int widthPixels = getResources().getDisplayMetrics().widthPixels;   //屏幕宽度
                int heightPixels = getResources().getDisplayMetrics().heightPixels;     //屏幕高度
                int width = v.getWidth();   //图片宽带
                int height = v.getHeight();     //图片高度
                switch (event.getAction()) {
                    case MotionEvent.ACTION_MOVE:
                        //图片的绝对位置
                        float x = event.getRawX();
                        float y = event.getRawY();
                        //避免图片滑出屏幕
                        if (x > widthPixels - width) {
                            x = widthPixels - width;
                        }
                        if (y > heightPixels - height - dip2px(getContext(), 75)) {
                            y = heightPixels - height - dip2px(getContext(), 75);
                        }
                        v.setX(x);
                        v.setY(y);
                        break;
                }
                return false;   //表示还可以监听其他事件
            }
        });
    }
  • 相关阅读:
    索引,约束
    C# Dictionary 的几种遍历方法
    唯一性约束和唯一性索引的区别
    JS中offsetTop、clientTop、scrollTop、offsetTop各属性介绍
    Dictionary学习笔记嵌套Dictionary的遍历与排序(按Key值)(二)
    Dictionary学习笔记Dictionary定义与输出(一)
    集体智慧编程笔记搜索和排序
    emacs键盘映射
    集体智慧编程笔记推荐系统
    使用SRILM训练大的语言模型
  • 原文地址:https://www.cnblogs.com/anni-qianqian/p/5530620.html
Copyright © 2011-2022 走看看