diff --git a/Softeq.XToolkit.Common.iOS/Extensions/NSStringExtensions.cs b/Softeq.XToolkit.Common.iOS/Extensions/NSStringExtensions.cs
index 975a36a16..3811527ec 100644
--- a/Softeq.XToolkit.Common.iOS/Extensions/NSStringExtensions.cs
+++ b/Softeq.XToolkit.Common.iOS/Extensions/NSStringExtensions.cs
@@ -5,6 +5,7 @@
using System.Collections.Generic;
using Foundation;
using Softeq.XToolkit.Common.Extensions;
+using Softeq.XToolkit.Common.Logger;
using UIKit;
namespace Softeq.XToolkit.Common.iOS.Extensions
@@ -48,10 +49,12 @@ public static NSMutableAttributedString BuildAttributedString(this string input)
///
/// Any HTML string.
/// HTML encoding.
+ /// logger for error logging.
/// New instance of .
public static NSMutableAttributedString BuildAttributedStringFromHtml(
this string html,
- NSStringEncoding encoding = NSStringEncoding.UTF8)
+ NSStringEncoding encoding = NSStringEncoding.UTF8,
+ ILogger? logger = null)
{
var importParams = new NSAttributedStringDocumentAttributes
{
@@ -59,10 +62,27 @@ public static NSMutableAttributedString BuildAttributedStringFromHtml(
StringEncoding = encoding
};
- var error = new NSError();
+ NSError? error = null;
- var attributedString = new NSAttributedString(html, importParams, ref error);
- return new NSMutableAttributedString(attributedString);
+ try
+ {
+#pragma warning disable CS8601 // Possible null reference assignment.
+ var attributedString = new NSAttributedString(html, importParams, ref error);
+#pragma warning restore CS8601 // Possible null reference assignment.
+ return new NSMutableAttributedString(attributedString);
+ }
+ catch (Exception ex)
+ {
+ logger?.Error(ex);
+ throw;
+ }
+ finally
+ {
+ if (error != null)
+ {
+ logger?.Info("Error message: " + error.Description);
+ }
+ }
}
///