بالتأكيد، إليك نظرة عامة تفصيلية حول كيفية تغيير حجم SwiftUI Switch في Swift.
SwiftUI هو إطار عمل Apple لبناء واجهات المستخدم عبر جميع منصات Apple بقوة Swift. في بعض الأحيان، قد يواجه المطورون الحاجة إلى ضبط حجم مكونات معينة لواجهة المستخدم، مثل المحول. افتراضيًا، لا يسمح SwiftUI بتغيير حجم المحول مباشرة، ولكن يمكننا استخدام بعض الحلول لتحقيق ذلك.
دعونا نتعمق في حل المشكلة.
إنشاء تبديل مخصص في SwiftUI
لضبط حجم Switch في SwiftUI، تتمثل إحدى الطرق في إنشاء Switch مخصص. يتيح لك ذلك التحكم الكامل في مظهر وحجم المحول.
فيما يلي مثال للتعليمة البرمجية التي تنشئ مفتاحًا مخصصًا:
struct CustomSwitch: View { @Binding var isOn: Bool var body: some View { Button(action: { self.isOn.toggle() }) { Rectangle() .fill(self.isOn ? Color.green : Color.gray) .frame(width: 50, height: 30) .overlay(Circle() .fill(Color.white) .offset(x: self.isOn ? 10 : -10), alignment: self.isOn ? .trailing : .leading) .cornerRadius(15) .animation(.spring()) } } }
فهم رمز التبديل المخصص
دعنا نحلل ما يفعله هذا الكود:
- هيكل CustomSwitch: وهذا يحدد طريقة عرض SwiftUI المخصصة لدينا. إنه مرتبط بقيمة منطقية - حالة المحول.
- عمل الزر: تحدد كتلة كود Swift السلوك عند الضغط على الزر. هنا، ما عليك سوى تبديل حالة "isOn".
- مستطيل: مثال على بنية المستطيل الخاصة بـ SwiftUI، والتي تحدد خصائص الشكل.
- لون التعبئة: يعتمد لون المستطيل على ما إذا كانت قيمة "isOn" صحيحة أم خاطئة.
- الإطار: يوضح معدّل الإطار هنا عرض وارتفاع المفتاح المخصص.
- تراكب: يسمح لك معدّل التراكب بوضع طبقة عرض SwiftUI أخرى فوق العرض الحالي - هنا، دائرة بيضاء تعمل كمقبض التبديل.
- عوض: يتم استخدام معدل الإزاحة هنا لتحريك الدائرة اعتمادًا على ما إذا كان "isOn" صحيحًا أم خطأ، مما يعطي الوهم بأن المفتاح قيد التبديل.
- نصف قطر الزاوية: ينطبق هذا على التقريب إلى زوايا المستطيل الأساسي.
- الرسوم المتحركة: يطبق معدِّل الرسوم المتحركة رسمًا متحركًا لـ Spring() على الزر بأكمله - لذلك عند التبديل، سيتم التبديل بسلاسة.
في المخص:
يمكن أن تكون القدرة على تخصيص حجم SwiftUI Switch ميزة عند تصميم واجهة المستخدم لتتناسب مع احتياجات التطبيقات المحددة. لقد تعلمنا طريقة واحدة لتحقيق ذلك من خلال إنشاء مفتاح تبديل مخصص. ترميز سعيد!
تذكر: SwiftUI مرن للغاية وقابل للتخصيص. لا تتردد في ضبط القيم والخصائص في الكود أعلاه لتناسب احتياجات مشروعك وتصميمك بشكل أفضل. إذا كنت بحاجة إلى تغيير حجم أي مكونات أخرى لواجهة المستخدم، فيمكن تطبيق أسلوب الإنشاء المخصص بنفس الطريقة تقريبًا.