1
1
package com .codemx .effectivecard ;
2
2
3
3
import android .content .Context ;
4
+ import android .graphics .PixelFormat ;
4
5
import android .os .Handler ;
5
6
import android .os .Looper ;
6
7
import android .view .Gravity ;
7
8
import android .view .LayoutInflater ;
8
- import android .view .MotionEvent ;
9
9
import android .view .View ;
10
10
import android .view .WindowManager ;
11
11
import android .widget .ImageView ;
@@ -51,13 +51,13 @@ private void showWindow(MxLayoutParams layoutParams) {
51
51
52
52
mWindowManager = (WindowManager ) mContext .getSystemService (Context .WINDOW_SERVICE );
53
53
mWindowParams = new WindowManager .LayoutParams ();
54
- // mWindowParams.width = layoutParams.width;
55
- // mWindowParams.height = layoutParams.height;
56
- mWindowParams .width = 600 ;
57
- mWindowParams .height = 600 ;
54
+ mWindowParams .width = layoutParams .width ;
55
+ mWindowParams .height = layoutParams .height ;
58
56
XLog .d (XLog .getTag (), "width= " + layoutParams .width + " ,height= " + layoutParams .height );
59
57
mWindowParams .x = 0 ;
60
58
mWindowParams .y = 0 ;
59
+ // 设置透明
60
+ mWindowParams .format = PixelFormat .RGBA_8888 ;
61
61
mWindowParams .gravity = Gravity .TOP | Gravity .START ;
62
62
mWindowParams .flags = WindowManager .LayoutParams .FLAG_NOT_FOCUSABLE
63
63
| WindowManager .LayoutParams .FLAG_NOT_TOUCH_MODAL
@@ -68,33 +68,8 @@ private void showWindow(MxLayoutParams layoutParams) {
68
68
| WindowManager .LayoutParams .FLAG_LAYOUT_NO_LIMITS ;
69
69
mWindowParams .type = WindowManager .LayoutParams .TYPE_APPLICATION_OVERLAY ;
70
70
mWindowManager .addView (mContentView , mWindowParams );
71
- mContentView .setOnTouchListener (new View .OnTouchListener () {
72
- @ Override
73
- public boolean onTouch (View v , MotionEvent event ) {
74
- switch (event .getAction ()) {
75
- case MotionEvent .ACTION_DOWN :
76
- mStartX = event .getRawX ();
77
- XLog .d (XLog .getTag (), "ACTION_DOWN= " + event .getRawX ());
78
- break ;
79
- case MotionEvent .ACTION_MOVE :
80
- // mWindowParams.x += (int) (event.getRawX() - mStartX);
81
- // mStartX = event.getRawX();
82
- // XLog.d(XLog.getTag(), "ACTION_MOVE= " + event.getRawX());
83
- // mWindowManager.updateViewLayout(v, mWindowParams);
84
- v .setTranslationX (-100 );
85
- break ;
86
- case MotionEvent .ACTION_UP :
87
- break ;
88
- default :
89
- break ;
90
- }
91
- return false ;
92
- }
93
- });
94
71
}
95
72
96
- private float mStartX ;
97
-
98
73
public void hideWindow () {
99
74
FloatWindow .destroy ();
100
75
}
0 commit comments