Close Menu
  • Home
  • AI
  • Big Data
  • Cloud Computing
  • iOS Development
  • IoT
  • IT/ Cybersecurity
  • Tech
    • Nanotechnology
    • Green Technology
    • Apple
    • Software Development
    • Software Engineering

Subscribe to Updates

Get the latest technology news from Bigteetechhub about IT, Cybersecurity and Big Data.

    What's Hot

    Navigating the labyrinth of forks

    July 18, 2025

    OpenAI unveils ‘ChatGPT agent’ that gives ChatGPT its own computer to autonomously use your email and web apps, download and create files for you

    July 18, 2025

    Big milestone for the future of quantum computing.

    July 18, 2025
    Facebook X (Twitter) Instagram
    Facebook X (Twitter) Instagram
    Big Tee Tech Hub
    • Home
    • AI
    • Big Data
    • Cloud Computing
    • iOS Development
    • IoT
    • IT/ Cybersecurity
    • Tech
      • Nanotechnology
      • Green Technology
      • Apple
      • Software Development
      • Software Engineering
    Big Tee Tech Hub
    Home»iOS Development»Uniquely identifying views – The.Swift.Dev.
    iOS Development

    Uniquely identifying views – The.Swift.Dev.

    big tee tech hubBy big tee tech hubMay 19, 2025013 Mins Read
    Share Facebook Twitter Pinterest Copy Link LinkedIn Tumblr Email Telegram WhatsApp
    Follow Us
    Google News Flipboard
    Uniquely identifying views – The.Swift.Dev.
    Share
    Facebook Twitter LinkedIn Pinterest Email Copy Link


    4/2/19 4:20 PM
    · 1 min read


    Learn how to use string based UIView identifiers instead of tags. If you are tired of tagging views, check out these alternative solutions.

    First approach: accessibility to the rescue!

    Long story short, I was quite tired of tagging views with stupid number values, so I looked for a better alternative solution to fix my problem. As it turned out, there is a property called accessibilityIdentifier that can do the job.

    extension UIView {
    
        var id: String? {
            get {
                return self.accessibilityIdentifier
            }
            set {
                self.accessibilityIdentifier = newValue
            }
        }
    
        func view(withId id: String) -> UIView? {
            if self.id == id {
                return self
            }
            for view in self.subviews {
                if let view = view.view(withId: id) {
                    return view
                }
            }
            return nil
        }
    }
    

    I made a simple extension around the UIView class, so now I can use a proper string value to uniquely identify any view object in the view hierarchy. It’s quite a nice solution, now I can name my views in a really nice way. As a gratis storing the name under the accessibilityIdentifier will benefit your UI tests. 😉

    Second approach: using enums

    The main idea is to have an Int based enum for every view identifier, so basically you can use the tag property to store the enum’s rawValue. It’s still not so nice as the one above, but it’s way more safe than relying on pure integers. 😬

    enum ViewIdentifier: Int {
        case submitButton
    }
    
    extension UIView {
    
        var identifier: ViewIdentifier? {
            set {
                if let value = newValue {
                    self.tag = value.rawValue
                }
            }
            get {
                return ViewIdentifier(rawValue: self.tag)
            }
        }
    
        func view(withId id: ViewIdentifier) -> UIView? {
            return self.viewWithTag(id.rawValue)
        }
    }
    

    Honestly I just came up with the second approach right after I copy & pasted the first snippet to this article, but what the heck, maybe someone else will like it. 😂

    If you have a better solution for this problem, feel free to share it with me.


    Uniquely identifying views – The.Swift.Dev.

    Share this article

    Thank you. 🙏

    Related posts

    Uniquely identifying views – The.Swift.Dev.

    10/31/17 4:20 PM
    · 6 min read


    In this great iOS Auto Layout tutorial I’ll teach you how to support rotation, use constraints, work with layers, animate corner radius.

    Uniquely identifying views – The.Swift.Dev.

    10/10/17 4:20 PM
    · 2 min read


    Learn about the initialization process of the two well known classes in UIKit. Say hello to UIViewcontroller, and UIView init patterns.

    Uniquely identifying views – The.Swift.Dev.

    10/16/18 4:20 PM
    · 5 min read


    Do you want to learn how to load a xib file to create a custom view object? Well, this UIKit tutorial is just for you written in Swift.

    Uniquely identifying views – The.Swift.Dev.

    5/17/18 4:20 PM
    · 3 min read


    Learn how to sync files and data through a shared iCloud drive folder using the latest version of Swift programming language.



    Source link

    identifying The.Swift.Dev Uniquely views
    Follow on Google News Follow on Flipboard
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email Copy Link
    tonirufai
    big tee tech hub
    • Website

    Related Posts

    Deep dive into Swift frameworks

    July 17, 2025

    How to parse JSON in Swift using Codable protocol?

    July 16, 2025

    Four Months in the Making: SwiftMCP 1.0 is Here

    July 15, 2025
    Add A Comment
    Leave A Reply Cancel Reply

    Editors Picks

    Navigating the labyrinth of forks

    July 18, 2025

    OpenAI unveils ‘ChatGPT agent’ that gives ChatGPT its own computer to autonomously use your email and web apps, download and create files for you

    July 18, 2025

    Big milestone for the future of quantum computing.

    July 18, 2025

    Exploring supersymmetry through twisted bilayer materials – Physics World

    July 18, 2025
    Advertisement
    About Us
    About Us

    Welcome To big tee tech hub. Big tee tech hub is a Professional seo tools Platform. Here we will provide you only interesting content, which you will like very much. We’re dedicated to providing you the best of seo tools, with a focus on dependability and tools. We’re working to turn our passion for seo tools into a booming online website. We hope you enjoy our seo tools as much as we enjoy offering them to you.

    Don't Miss!

    Navigating the labyrinth of forks

    July 18, 2025

    OpenAI unveils ‘ChatGPT agent’ that gives ChatGPT its own computer to autonomously use your email and web apps, download and create files for you

    July 18, 2025

    Subscribe to Updates

    Get the latest technology news from Bigteetechhub about IT, Cybersecurity and Big Data.

      • About Us
      • Contact Us
      • Disclaimer
      • Privacy Policy
      • Terms and Conditions
      © 2025 bigteetechhub.All Right Reserved

      Type above and press Enter to search. Press Esc to cancel.