برنامه نویسی

مقدمه ای بر کاتالوگ رشته: بهبود یافتن رشته در iOS 16 با Xcode 14

Summarize this content to 400 words in Persian Lang
کاتالوگ رشته در Xcode 14 معرفی شد که در کنار iOS 16 منتشر شد. این کاتالوگ برای ساده سازی و مدرن کردن روشی که توسعه دهندگان با رشته های محلی سازی شده در پروژه های خود مدیریت می کنند طراحی شده است، رابط بصری و یکپارچه تری را در مقایسه با روش های سنتی ارائه می دهد.

هنگام کلیک بر روی ایجاد یک فایل جدید، String Catalog به عنوان یک گزینه نشان داده می شود

هنگام انتخاب و انتخاب نام، در گوشه سمت چپ، زبان های پشتیبانی شده با دکمه ای برای افزودن گزینه های بیشتر نشان داده می شود، جایی که امکان افزودن پرتغالی نیز وجود دارد.

برای مثال با کد، عنوان اجزای این نوار نوار از فایل ایجاد شده می آید.

اگر فکر کنیم که صفحه نمایش اینگونه ساخته می شود

import SwiftUI

struct ContentView: View {
var body: some View {
TabView {
BlogView()
.tabItem {
Label(“Blog”,
systemImage: “doc.text”)
}

InterviewGenerateQuestionsView()
.tabItem {
Label(“Entrevistas”, systemImage: “mic.fill”)
}

ResumeView()
.tabItem {
Label(“Currículo”, systemImage: “book.fill”)
}

MenuView()
.tabItem {
Label(“Menu”, systemImage: “line.horizontal.3”)
}
}
}
}

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

ایجاد چهار خاصیت که با پسوند عنوان نام می برم ضروری است.

اگر فایل ایجاد شده دارای نام باشد قابل محلی سازی. رشته ها، از این طریق می توان به رشته دسترسی داشت

String(localized: “blogTitle”)

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

در مورد نام دیگری، باید به جدول دیگری دسترسی داشته باشید

private static func localized(_ key: String) -> String {
return NSLocalizedString(key,
tableName: “HomeStrings”,
bundle: .main,
value: “”,
comment: “”)
}

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

برای جلوگیری از بارگذاری بیش از حد نقش با مسئولیت ها و تکرار کد، ایجاد یک فایل برای مراقبت از این دسترسی جالب است.

import Foundation

class HomeStrings {
static let blogTitle = localized(“blogTitle”)
static let interviewTitle = localized(“interviewTitle”)
static let menuTitle = localized(“menuTitle”)
static let resumeTitle = localized(“resumeTitle”)

private static func localized(_ key: String) -> String {
return NSLocalizedString(key,
tableName: “HomeStrings”,
bundle: .main,
value: “”,
comment: “”)
}
}

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

بنابراین ContentView به این شکل خواهد بود

import SwiftUI

struct ContentView: View {
var body: some View {
TabView {
BlogView()
.tabItem {
Label(HomeStrings.blogTitle,
systemImage: “doc.text”)
}

InterviewGenerateQuestionsView()
.tabItem {
Label(HomeStrings.interviewTitle,
systemImage: “mic.fill”)
}

ResumeView()
.tabItem {
Label(HomeStrings.resumeTitle,
systemImage: “book.fill”)
}

MenuView()
.tabItem {
Label(HomeStrings.menuTitle,
systemImage: “line.horizontal.3”)
}
}
}
}

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

کاتالوگ رشته در Xcode 14 معرفی شد که در کنار iOS 16 منتشر شد. این کاتالوگ برای ساده سازی و مدرن کردن روشی که توسعه دهندگان با رشته های محلی سازی شده در پروژه های خود مدیریت می کنند طراحی شده است، رابط بصری و یکپارچه تری را در مقایسه با روش های سنتی ارائه می دهد.

هنگام کلیک بر روی ایجاد یک فایل جدید، String Catalog به عنوان یک گزینه نشان داده می شود

توضیحات تصویر

هنگام انتخاب و انتخاب نام، در گوشه سمت چپ، زبان های پشتیبانی شده با دکمه ای برای افزودن گزینه های بیشتر نشان داده می شود، جایی که امکان افزودن پرتغالی نیز وجود دارد.

توضیحات تصویر

برای مثال با کد، عنوان اجزای این نوار نوار از فایل ایجاد شده می آید.

توضیحات تصویر

اگر فکر کنیم که صفحه نمایش اینگونه ساخته می شود

import SwiftUI

struct ContentView: View {
    var body: some View {
        TabView {
            BlogView()
                .tabItem {
                    Label("Blog",
                          systemImage: "doc.text")
                }

            InterviewGenerateQuestionsView()
                .tabItem {
                    Label("Entrevistas", systemImage: "mic.fill")
                }

            ResumeView()
                .tabItem {
                    Label("Currículo", systemImage: "book.fill")
                }

            MenuView()
                .tabItem {
                    Label("Menu", systemImage: "line.horizontal.3")
                }
        }
    }
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

ایجاد چهار خاصیت که با پسوند عنوان نام می برم ضروری است.

توضیحات تصویر

اگر فایل ایجاد شده دارای نام باشد قابل محلی سازی. رشته ها، از این طریق می توان به رشته دسترسی داشت

String(localized: "blogTitle")
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

در مورد نام دیگری، باید به جدول دیگری دسترسی داشته باشید

private static func localized(_ key: String) -> String {
        return NSLocalizedString(key, 
                                 tableName: "HomeStrings", 
                                 bundle: .main, 
                                 value: "", 
                                 comment: "")
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

برای جلوگیری از بارگذاری بیش از حد نقش با مسئولیت ها و تکرار کد، ایجاد یک فایل برای مراقبت از این دسترسی جالب است.

import Foundation

class HomeStrings {
    static let blogTitle = localized("blogTitle")
    static let interviewTitle = localized("interviewTitle")
    static let menuTitle = localized("menuTitle")
    static let resumeTitle = localized("resumeTitle")

    private static func localized(_ key: String) -> String {
        return NSLocalizedString(key, 
                                 tableName: "HomeStrings", 
                                 bundle: .main, 
                                 value: "", 
                                 comment: "")
    }
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

بنابراین ContentView به این شکل خواهد بود

import SwiftUI

struct ContentView: View {
    var body: some View {
        TabView {
            BlogView()
                .tabItem {
                    Label(HomeStrings.blogTitle,
                          systemImage: "doc.text")
                }

            InterviewGenerateQuestionsView()
                .tabItem {
                    Label(HomeStrings.interviewTitle,
                          systemImage: "mic.fill")
                }

            ResumeView()
                .tabItem {
                    Label(HomeStrings.resumeTitle,
                          systemImage: "book.fill")
                }

            MenuView()
                .tabItem {
                    Label(HomeStrings.menuTitle, 
                          systemImage: "line.horizontal.3")
                }
        }
    }
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا