ဟုတ်ပါတယ်၊ ဤတွင် Swift တွင် SwiftUI Switch ၏အရွယ်အစားကို သင်မည်သို့ပြောင်းလဲနိုင်ပုံအကြောင်း အသေးစိတ်ခြုံငုံသုံးသပ်ချက်ဖြစ်သည်။
SwiftUI သည် Swift ၏ ပါဝါဖြင့် Apple ပလက်ဖောင်းအားလုံးတွင် သုံးစွဲသူကြားခံများကို တည်ဆောက်ရန် Apple ၏ မူဘောင်ဖြစ်သည်။ တစ်ခါတစ်ရံတွင် developer များသည် switch တစ်ခုကဲ့သို့ သီးခြား UI အစိတ်အပိုင်းများ၏ အရွယ်အစားကို ချိန်ညှိရန် လိုအပ်သည်ကို တွေ့နိုင်သည်။ မူရင်းအားဖြင့်၊ SwiftUI သည် Switch ၏အရွယ်အစားကို တိုက်ရိုက်ပြောင်းလဲရန် ခွင့်မပြုသော်လည်း ၎င်းကိုအောင်မြင်ရန် ဖြေရှင်းနည်းအချို့ကို ကျွန်ုပ်တို့အသုံးပြုနိုင်ပါသည်။
ပြဿနာရဲ့ အဖြေကို စေ့ငုကြည့်ရအောင်။
SwiftUI တွင် စိတ်ကြိုက်ခလုတ်တစ်ခု ဖန်တီးခြင်း။
SwiftUI ရှိ Switch ၏အရွယ်အစားကို ချိန်ညှိရန် ချဉ်းကပ်မှုတစ်ခုမှာ စိတ်ကြိုက် Switch တစ်ခုကို ဖန်တီးရန်ဖြစ်သည်။ ၎င်းသည် သင့်အား 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()) } } }
Custom Switch Code ကို နားလည်ခြင်း။
ဒီကုဒ်က ဘာလုပ်ဆောင်လဲဆိုတာ ခွဲကြည့်ရအောင်။
- CustomSwitch တည်ဆောက်ပုံ- ၎င်းသည် ကျွန်ုပ်တို့၏ စိတ်ကြိုက် SwiftUI View ကို သတ်မှတ်သည်။ ၎င်းတွင် boolean တန်ဖိုး—ခလုတ်အတွက် အခြေအနေ။
- ခလုတ်လုပ်ဆောင်ချက်- ဤ Swift ကုဒ် ပိတ်ဆို့ခြင်းသည် ခလုတ်ကို နှိပ်သောအခါ အပြုအမူကို သတ်မှတ်သည်။ ဤတွင်၊ ရိုးရှင်းစွာ "isOn" အခြေအနေကိုပြောင်းပါ။
- စတုဂံပုံ ပုံသဏ္ဍာန်၏ဂုဏ်သတ္တိများကိုသတ်မှတ်ခြင်း SwiftUI ၏စတုဂံဖွဲ့စည်းပုံဥပမာ။
- အရောင်ဖြည့် ထောင့်မှန်စတုဂံ၏အရောင်သည် “isOn” သည် မှန်သည်ဖြစ်စေ၊ မှားသည်ဖြစ်စေ အပေါ်မူတည်ပါသည်။
- frame က: ဤနေရာတွင် ဘောင်မွမ်းမံမှုသည် စိတ်ကြိုက်ခလုတ်၏ အကျယ်နှင့် အမြင့်ကို ဖော်ပြနေသည်။
- overlay: ထပ်ဆင့်မွမ်းမံမှုသည် သင့်အား ရှိပြီးသားတစ်ခု၏ထိပ်တွင် အခြားသော SwiftUI View ကို အလွှာပေးနိုင်သည် - ဤနေရာတွင်၊ ခလုတ်ခလုတ်အဖြစ် လုပ်ဆောင်သည့် အဖြူရောင်စက်ဝိုင်းတစ်ခု။
- offset: အော့ဖ်ဆက်မွမ်းမံမှုအား “isOn” သည် မှန်သည်ဖြစ်စေ၊ မှားသည်ဖြစ်စေ အပေါ်မူတည်၍ စက်ဝိုင်းကိုရွှေ့ရန် ဤနေရာတွင် အသုံးပြုပြီး ခလုတ်ပြောင်းနေသည်ဟူသော ထင်ယောင်ထင်မှားဖြစ်စေသည်။
- ထောင့်အချင်းဝက်- ၎င်းသည် အရင်းခံစတုဂံ၏ ထောင့်များကို ဝိုင်းခြင်းသက်ရောက်သည်။
- ကာတွန်း ကာတွန်းမွမ်းမံမှုစနစ်သည် ခလုတ်တစ်ခုလုံးတွင် spring() ကာတွန်းကို သက်ရောက်သည်- ထို့ကြောင့် သင်ပြောင်းသည့်အခါ၊ ၎င်းသည် ချောမွေ့စွာပြောင်းသွားမည်ဖြစ်သည်။
Up ကိုအရှေ့ဥရောပ, တောင်အာဖရိက
SwiftUI Switch ၏ အရွယ်အစားကို စိတ်ကြိုက်ပြင်ဆင်နိုင်စွမ်းရှိခြင်းသည် တိကျသော application လိုအပ်ချက်များနှင့် ကိုက်ညီစေရန် အသုံးပြုသူမျက်နှာပြင်ကို အံဝင်ခွင်ကျဖြစ်စေရန် အားသာချက်တစ်ခုဖြစ်သည်။ စိတ်ကြိုက် Switch ကို ဖန်တီးခြင်းဖြင့် ၎င်းကို အောင်မြင်ရန် ချဉ်းကပ်နည်းတစ်ခုကို ကျွန်ုပ်တို့ လေ့လာထားပါသည်။ ပျော်ရွှင်စွာ ကုဒ်ရေးပါ။
ကိုသတိရပါ: SwiftUI သည် အလွန်ပြောင်းလွယ်ပြင်လွယ်ဖြစ်ပြီး စိတ်ကြိုက်ပြင်ဆင်နိုင်သည်။ သင့်ပရောဂျက်နှင့် ဒီဇိုင်းလိုအပ်ချက်များနှင့် ပိုမိုကိုက်ညီစေရန် အထက်ကုဒ်ရှိ တန်ဖိုးများနှင့် ဂုဏ်သတ္တိများကို ချိန်ညှိရန် အားမနာပါ။ အခြား UI အစိတ်အပိုင်းများ၏ အရွယ်အစားကို ပြောင်းလဲရန် လိုအပ်ပါက၊ စိတ်ကြိုက်ဖန်တီးမှုနည်းလမ်းကို တူညီသောနည်းဖြင့် အသုံးပြုနိုင်သည်။