Skip to content

Commit e8fd1b6

Browse files
authored
quick fix to support loadData method
1 parent a7984c9 commit e8fd1b6

File tree

1 file changed

+22
-1
lines changed

1 file changed

+22
-1
lines changed

ios/Classes/FlutterWebView.m

+22-1
Original file line numberDiff line numberDiff line change
@@ -60,11 +60,14 @@ - (UIView*)view {
6060
- (void)onMethodCall:(FlutterMethodCall*)call result:(FlutterResult)result {
6161
if ([[call method] isEqualToString:@"loadUrl"]) {
6262
[self onLoadUrl:call result:result];
63+
} else if ([[call method] isEqualToString:@"loadData"]) {
64+
[self onLoadData:call result:result];
6365
} else {
6466
result(FlutterMethodNotImplemented);
6567
}
6668
}
6769

70+
6871
- (void)onLoadUrl:(FlutterMethodCall*)call result:(FlutterResult)result {
6972
NSString* url = [call arguments];
7073
if (![self loadUrl:url]) {
@@ -86,4 +89,22 @@ - (bool)loadUrl:(NSString*)url {
8689
return true;
8790
}
8891

89-
@end
92+
93+
- (void)onLoadData:(FlutterMethodCall*)call result:(FlutterResult)result {
94+
NSString* data = [call arguments];
95+
if (![self loadData:data]) {
96+
result([FlutterError errorWithCode:@"loadData_failed"
97+
message:@"Failed parsing the data"
98+
details:[NSString stringWithFormat:@"data was: '%@'", data]]);
99+
} else {
100+
result(nil);
101+
}
102+
}
103+
104+
- (bool)loadData:(NSString*)data {
105+
106+
[_webView loadHTMLString:data baseURL:nil];
107+
return true;
108+
}
109+
110+
@end

0 commit comments

Comments
 (0)