مكتبة سويفت لمكونات واجهة مستخدم عنوان3كلمات. توفر حزمة مكونات Swift هذه طريقة مباشرة لإضافة وظائف واجهة عنوان3كلمات إلى تطبيقك، مثل حقول نص الاقتراح التلقائي، أو طرق عرض الخريطة، أو خطوط شبكة عنوان3كلمات في تطبيقك.
ويشمل:
لاستخدام هذه المكتبة، ستحتاج إلى مفتاح API عنوان3كلمات، والذي يمكن الاشتراك فيه هنا. إذا كنت ترغب في استخدام مكالمات Voice API، فيجب عليك إضافة خطة Voice API إلى حسابك.
يمكنك التثبيت باستخدام Swift Package Manager عن طريق إضافة عنوان URL أدناه إلى Swift Packages ضمن إعدادات مشروعك:
https://github.com/what3words/w3w-swift-components.git
استيراد المكتبات:
import W3WSwiftApi
import W3WSwiftComponents
import CoreLocation
إذا كنت تستخدم Voice API على الجهاز، فيجب عليك تضمين أذونات الميكروفون في Info.plist الخاص بك:
W3WAutoSuggestTextField
هو UITextField
الذي سيقترح عناوين من ثلاث كلمات أثناء قيام المستخدم بإدخال النص. اختياريا، هناك خيار التعرف على الصوت.
يتوافق هذا مع W3WAutoSuggestTextFieldProtocol
الخاص بنا. على هذا النحو، تم توثيق الواجهة في Documentation/Autosuggest/autosuggest.md.
W3WAutoSuggestSearchController
هو UISearchController
الذي سيقترح عناوين من ثلاث كلمات أثناء قيام المستخدم بإدخال النص. يسمح هذا بتضمين هذه الوظيفة في أشياء مثل UINavigationController
. اختياريا، هناك خيار التعرف على الصوت.
يتوافق هذا مع W3WAutoSuggestTextFieldProtocol
الخاص بنا. على هذا النحو، تم توثيق الواجهة في Documentation/Autosuggest/autosuggest.md.
يتيح لك Map Helper إمكانية دمج ميزات خريطة عنوان3كلمات بسهولة في الخريطة الحالية.
يتوافق W3WMapHelper
مع W3WMapViewProtocol
. يمكن العثور على مرجع الوظيفة لها في Documentation/Map/map.md
let api = What3WordsV4(apiKey: "YourApiKey")
let mapHelper = W3WMapHelper(api, map: yourMKMapView)
إذا كان تطبيقك يحتوي بالفعل على ViewController الذي يحتوي على خريطة، W3WMapHelper
يوفر وظائف ملائمة لإضافتها إلى وظائف MKMapViewDelegate
الخاصة بك لتظهر شبكة عنوان3كلمات والتعليقات التوضيحية على خريطتك. يوضح المثال المرتبط أعلاه المكان الذي يمكنك إجراء المكالمات فيه، وكيفية إنشاء مثيل لـ W3WMapHelper
.
يتوافق W3WMapView
مع W3WMapViewProtocol
. يمكن العثور على مرجع الوظيفة لها في Documentation/Map/map.md
let api = What3WordsV4(apiKey: "YourApiKey")
let mapview = W3WMapView(api)
لقد أنشأنا W3WMapView
كطريقة سريعة وقذرة للحصول بسرعة على وظيفة عنوان3كلمات في تطبيقك.
ما عليك سوى استبدال MKMapView بـ W3WMapView، ومن المفترض أن يتصرف تطبيقك كما كان من قبل باستثناء أنه سيرسم خطوط شبكة عنوان3كلمات، وسيتوفر بعض الوظائف الجديدة، مثل addMarker(at: "filled.count.soap")
.
إنه مشتق من MKMapView
لكن Apple لا توصي باشتقاق كائنات جديدة من MKMapView على الأرجح لأن واجهته يمكن أن تتغير في المستقبل، لذا انظر إلى هذا كطريقة سريعة وقذرة للحصول على الوظيفة في تطبيقك.
سيكون الأسلوب الأفضل هو استخدام W3WMapHelper
الذي تم تصميمه ليناسب بشكل جيد فئة المطابقة MKMapViewDelegate
الخاصة بك، ومن المفترض أن UIViewController
.
يتوافق W3WMapViewController
مع W3WMapViewProtocol
. يمكن العثور على مرجع الوظيفة لها في Documentation/Map/map.md
let api = What3WordsV4(apiKey: "YourApiKey")
let vc = W3WMapViewController(api)
يوضح هذا W3WMapViewController
وهو مكون عالي المستوى يتميز بسهولة استخدام وظيفة عنوان3كلمات.
إذا لم تكن لديك خريطة في تطبيقك وتريد تضمين خريطة بسرعة مع بعض السلوكيات الافتراضية، فقد تكون هذه الخريطة مناسبة لك.
يتم ضبط نظام القياس في هذه المكونات على تفضيلات المستخدم أو الإعدادات المحلية تلقائيًا، ولكن يمكنك تجاوز ذلك إلى .metric
أو .imperial
:
W3WSettings . measurement = . metric
تمت ترجمة مكونات W3WAutosuggest إلى حوالي 50 لغة، وتوجد ملفات Localizable.strings
الخاصة بها في موارد هذه الحزمة. لكي تعمل، كما هو الحال مع أي إعدادات توطين لنظام iOS، تأكد من إضافة اللغات التي تريد استخدامها في إعدادات مشروعك ضمن المعلومات -> التعريب .