14
14
#import " CCDirector.h"
15
15
#import " CCEditText.h"
16
16
17
-
17
+
18
18
@implementation CCPlatformTextFieldAndroid {
19
19
CCEditText *_editText;
20
20
}
@@ -50,29 +50,28 @@ - (void) onExitTransitionDidStart
50
50
- (void ) positionInControl : (CCControl *)control padding : (float )padding {
51
51
CGPoint worldPos = [control convertToWorldSpace: CGPointZero];
52
52
CGPoint viewPos = [[CCDirector sharedDirector ] convertToUI: worldPos];
53
- viewPos.x += padding;
54
- // viewPos.y += padding;
53
+
55
54
56
55
CGFloat scale = [[CCDirector sharedDirector ] contentScaleFactor ];
57
56
58
57
viewPos.x *= scale;
59
58
viewPos.y *= scale;
60
59
61
60
CGSize size = control.contentSizeInPoints ;
62
- size.width -= padding * 2 ;
63
- size.height -= padding * 2 ;
64
61
size.width *= scale;
65
62
size.height *= scale ;
66
- viewPos.y -= size.height + padding *scale ;
67
-
63
+ viewPos.y -= size.height ;
64
+
68
65
69
66
CGRect frame = CGRectZero;
70
67
frame.origin = viewPos;
71
68
frame.size = size;
69
+ int nativePadding = (int )padding*scale;
72
70
dispatch_async (dispatch_get_main_queue (), ^{
73
71
AndroidViewGroupLayoutParams *oldParams = [_editText layoutParams ];
74
72
AndroidRelativeLayoutLayoutParams *params = [[AndroidRelativeLayoutLayoutParams alloc ] initWithWidth: frame.size.width height: frame.size.height];
75
73
[params setMargins: frame.origin.x top: frame.origin.y right: 0 bottom: 0 ];
74
+ [_editText setPadding: nativePadding top: nativePadding right: nativePadding bottom: nativePadding];
76
75
[_editText setLayoutParams: params];
77
76
[_editText setImeOptions: AndroidEditorInfoIME_FLAG_NO_EXTRACT_UI];
78
77
@@ -82,7 +81,7 @@ - (void) positionInControl:(CCControl *)control padding:(float)padding {
82
81
if ([[weakSelf delegate ] respondsToSelector: @selector (platformTextFieldDidFinishEditing: )]) {
83
82
[[weakSelf delegate ] platformTextFieldDidFinishEditing: weakSelf];
84
83
}
85
-
84
+
86
85
}];
87
86
});
88
87
}
@@ -106,12 +105,12 @@ - (void)setFontSize:(float)fontSize {
106
105
dispatch_async (dispatch_get_main_queue (), ^{
107
106
// AndroidDisplayMetrics *metrics = [[AndroidDisplayMetrics alloc] init];
108
107
// [[CCActivity currentActivity].windowManager.defaultDisplay getMetrics:metrics];
109
-
108
+
110
109
[_editText setTextSizeDouble: fontSize];
111
-
110
+
112
111
});
113
-
114
-
112
+
113
+
115
114
}
116
115
117
116
- (void )setString : (NSString *)string {
0 commit comments