Avatar ·

SwiftUI: كيفية تنفيذ init مخصص مع متغيرات @Binding

مرحبًا! أنا مبتدئ في SwiftUI وأحاول إنشاء عرض مخصص مع حقل إدخال نص. أحتاج إلى أن يتمكن العرض الأب من تمرير التحكم في الحالة عبر @Binding. ولكن عندما أحاول إضافة init مخصص، يشتكي Xcode ويقول إن الخاصية $text لم تتم تهيئتها. إليك الكود الخاص بي:

struct CustomTextField: View {
    @Binding var text: String
    var placeholder: String
    
    // أحاول عمل init مخصص
    init(placeholder: String, text: Binding<String>) {
        self.placeholder = placeholder
        self.text = text // خطأ: 'self' used before all stored properties are initialized
    }
    
    var body: some View {
        TextField(placeholder, text: $text)
            .textFieldStyle(RoundedBorderTextFieldStyle())
    }
}

أفهم أن @Binding هو property wrapper، لكنني لا أستطيع فهم كيفية تهيئته بشكل صحيح داخل init مخصص.