Sobes.tech
Junior — Middle

Μπορείς να δώσεις ένα παράδειγμα χρήσης της τυπικής βιβλιοθήκης όπου τα όρια στη συντεταγμένη x ή y δεν ξεκινούν από το μηδέν;

sobes.tech AI

Απάντηση από AI

Στη βασική βιβλιοθήκη του iOS (UIKit), ένα παράδειγμα χρήσης συστημάτων συντεταγμένων με όρια που δεν ξεκινούν από το μηδέν είναι η ιδιότητα frame του UIView.

Το frame περιγράφει τη θέση και το μέγεθος της προβολής στις συντεταγμένες της υπερ-προβολής της. Επιπλέον, το frame.origin.x και το frame.origin.y μπορούν να είναι οποιοιδήποτε αριθμοί, όχι απαραίτητα μηδέν, καθώς η προβολή μπορεί να τοποθετηθεί οπουδήποτε μέσα στην γονική προβολή.

Για παράδειγμα, αν ένα UIView έχει frame = CGRect(x: 50, y: 100, width: 200, height: 150), τότε τα όρια στο x ξεκινούν από 50 και στο y από 100, όχι από το μηδέν.

let parentView = UIView(frame: CGRect(x: 0, y: 0, width: 320, height: 480))
let childView = UIView(frame: CGRect(x: 50, y: 100, width: 200, height: 150))
parentView.addSubview(childView)
print(childView.frame.origin.x) // 50
print(childView.frame.origin.y) // 100

Έτσι, το σύστημα συντεταγμένων frame επιτρέπει τον προσανατολισμό στοιχείων διεπαφής σε αυθαίρετα μέρη, και όχι μόνο ξεκινώντας από το μηδέν.