Improve Tappable Area with contentShape
/ 1 min read
ပုံမှန် tappable area က control မှာပဲ ရှိပါတယ်။
HStack { Image("myImage") .resizable() .scaledToFit() .frame(width: 22,height: 22) Text("Hello World") Spacer()
if selectedIndexs.contains(index + 1) { Image(systemName:"checkmark") }}.onTapGesture { print("Tap")}
ဒီ code မှာ ဆိုရင် image နဲ့ text က လွဲပြီး white space နေရာတွေကို tap လုပ်လို့မရပါဘူး။ လုပ်လို့ရချင်သည့် အခါမှာ .contentShape(Rectangle())
နဲ့ အသုံးပြုနိုင်ပါတယ်။
HStack { Image("myImage") .resizable() .scaledToFit() .frame(width: 22,height: 22) Text("Hello World") Spacer()
if selectedIndexs.contains(index + 1) { Image(systemName:"checkmark") }}.contentShape(Rectangle()).onTapGesture { print("Tap")}
ဒါဆိုရင် white space နေရာတွေပါ tap လုပ်လို့ရသွားမှာပါ။ content shape တစ်ခုလုံးကို control သာမက rectangle အပြည့် အနေနဲ့ ယူဆ လိုက်သည့် အတွက် tap ရသွားတာပါ။