悬浮按钮

效果图

//将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;   //表示还可以监听其他事件
        }
    });
}
时间: 2024-11-05 12:14:21

悬浮按钮的相关文章

css3代码实现的鼠标悬浮按钮效果代码实例

css3代码实现的鼠标悬浮按钮效果代码实例:在css3之前,鼠标悬浮于按钮之上,无非是设置按钮的大小.字体颜色或者背景图片等简单的项目,但是css3的出现,可以让设置变得丰富多彩,下面就是一个css3实现的此效果.代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://

Android用悬浮按钮实现翻页效果

今天给大家分享下自己用悬浮按钮点击实现翻页效果的例子. 首先,一个按钮要实现悬浮,就要用到系统顶级窗口相关的WindowManager,WindowManager.LayoutParams.那么在AndroidManifest.xml中添加权限: ? 1 <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> 然后,我们要对WindowManager,WindowManager.La

android ——悬浮按钮及可交互提示

一.悬浮按钮 FloatingActionButton是Design Support中的一个控件,它会默认colorAccent作为按钮的颜色,还可以给按钮一个图标. 这是没有图标的,这是有图标的. 然后布局文件这样写: <android.support.design.widget.FloatingActionButton android:id="@+id/fab" android:layout_width="wrap_content" android:lay

Android FloatingActionButton(FAB) 悬浮按钮

FloatingActionButton 悬浮按钮                                                                                                                                  -------部分资料从网上查找的,如果不妥,请留言通知我更改! 1)布局文件 app:backgroundTint - 设置FAB的背景颜色. app:rippleColor - 设置FA

tableView添加悬浮按钮button添加悬浮窗

如何给tableView添加一个悬浮的按钮? 恐怕没有想象的那么简单! 最近在公司做项目时,产品经理有一个需求就是在一个 tableView上 加一个悬浮的按钮, 尝试了很多方案之后我终于找到了一个通用的可行的方案! 最终效果图: 滑动tableView之后的效果是: 可以 看到,我们实现了 悬浮的效果,随着tableView的滑动,悬浮按钮并没有随之儿而滚动! 受到这个启发,我们应该可以在 tableView上面,可以根据实际情况添加一个 悬浮的 置顶按钮,提高用户体验! 首先说一下方案的选取

iOS开发——悬浮按钮

项目中需要在创建一个悬浮按钮,自己觉得光创建一个按钮不能滑动有点不太优化,就自己试着做了一个可以随意拖动的悬浮按钮,希望大家能够多多支持. -(void)viewDidLoad { //创建悬浮按钮 self.editEventsButton=[UIButton buttonWithType:UIButtonTypeCustom]; self.editEventsButton.frame=CGRectMake(0, 0, 60, 60); [self.editEventsButton setBa

CoordinatorLayout与ListView协同让FAB悬浮按钮从底部消失及出现

CoordinatorLayout协同布局在一般只结合RecyclerView和NestedScrollView使用,如果我使用ListView没有效果的.但是,由于业务原因使用ListView,有需要实现协同的效果怎么办? 其实分析RecyclerView和NestedScrollView的源码可以知道,他们都实现了一个接口NestedScrollingChild,所以我们可以自定义ListView,实现NestedScrollingChild接口就好.当然除此外,google还提供了一个AP

Framework7新版学习笔记之 升级版悬浮按钮

一:悬浮按钮 悬浮按钮是一种有着特殊UI效果的按钮,它看起来就像悬浮在界面之上一样. 悬浮按钮点击时通常会展开一系列的选项按钮,十分酷炫. 新版F7中的悬浮按钮不仅仅是Material Design特有了,而是一种通用的UI控件. 二:悬浮按钮种类 1)按照它在界面中的位置来分类: fab-right-bottom fab-center-bottom fab-left-bottom fab-right-center fab-center-center fab-left-center fab-ri

小程序悬浮按钮进入内页

wxml: <!-- 小程序悬浮按钮进入内页 --> <navigator class="set_button" url='../set/set' hover-class='none'> <image class="set_image" src="/images/set.png"></image> </navigator> wxss: .set_button{ background-co

您的位置:首页 &#187; IOS &#187; iOS中全局悬浮按钮,类似IPhone中的AssistiveTouch iOS中全局悬浮按钮,类似IPhone中的AssistiveTouch

原文地址:http://blog.5ibc.net/p/86562.html 前提:当时看到别人写过这个类似AssistiveTouch的demo,但是有问题,第一改变不了位置.第二切换页面后无法使用.第三运行时偶尔会崩溃.然后自己就去度娘.论坛中都查了一些资料,然后结合起来写了这么一个demo. 思路:实现全局 需要在 AppDelegate.m 文件中 didFinishLaunchingWithOptions 方法里面实现 1.新建一个 继承于 UIWindow 的类 AssistiveT