iPadOS: মূল ধারণা, iPad ডেভেলপমেন্ট এবং Apple Pencil

লেখক: IT Sectr প্রকাশিত: 2026-02-07 পড়ার সময়: 12 মিনিট

iPadOS হল Apple-এর iPad-এর জন্য অপারেটিং সিস্টেম, যা 2019 সালে iOS থেকে আলাদা করা হয়েছিল। iPad ডেভেলপমেন্ট অনন্য ক্ষমতাগুলি বিবেচনা করে: Split View এবং Stage Manager মাল্টিটাস্কিং, কম লেটেন্সি Apple Pencil ইনপুট এবং ডেস্কটপ Safari।

মূল পয়েন্ট

  • iPadOS — বিস্তৃত মাল্টিটাস্কিং এবং Apple Pencil সমর্থন সহ iOS-এর একটি ফর্ক
  • মাল্টিটাস্কিং এর মধ্যে রয়েছে Split View, Slide Over, Stage Manager এবং বাহ্যিক মনিটর
  • Apple Pencil — 9–20 ms লেটেন্সি সহ স্টাইলাস, PencilKit এবং hover API সমর্থন
  • ইন্টারফেস অভিযোজন Size Classes (regular/compact) এবং UISplitViewController ব্যবহার করে
  • Safari iPadOS-এ ডেস্কটপ মোডে ডাউনলোড ম্যানেজার সহ চলে

iPadOS কী?

iPadOS হল Apple-এর iPad-এর জন্য অপারেটিং সিস্টেম, যা প্রথম 2019 সালে iOS (সংস্করণ 13)-এর ফর্ক হিসেবে প্রকাশিত হয়েছিল। এর আগে, iPad iPhone-এর মতো একই iOS ব্যবহার করত। iPadOS-এর পৃথকীকরণ Apple-কে বড় স্ক্রিনের জন্য নির্দিষ্ট বৈশিষ্ট্য প্রবর্তনের অনুমতি দিয়েছে: মাল্টিটাস্কিং, ডেস্কটপ Safari, ড্র্যাগ অ্যান্ড ড্রপ এবং বাহ্যিক মনিটর সমর্থন।

iPadOS iOS অ্যাপগুলির সাথে সম্পূর্ণ সামঞ্জস্য বজায় রাখে: যেকোনো iPhone অ্যাপ iPad-এ স্কেলিং মোডে চলে। তবে, একটি মানসম্পন্ন ব্যবহারকারীর অভিজ্ঞতার জন্য অভিযোজন প্রয়োজন: Size Classes, UISplitViewController এবং কীবোর্ড শর্টকাট সমর্থন ব্যবহার করা। Apple (WWDC 2025) অনুসারে, iPad-এ 80% সময় ব্যবহারকারীরা স্কেল করা সংস্করণের পরিবর্তে ট্যাবলেট-অপ্টিমাইজ্ড সংস্করণে ব্যয় করেন।

iPadOS সংস্করণ ইতিহাস

iPadOS 13 (2019) Slide Over এবং Split View চালু করেছে। iPadOS 14 (2020) Apple Pencil Scribble এবং কমপ্যাক্ট UI যুক্ত করেছে। iPadOS 15 (2021) Quick Note এবং মাল্টিটাস্কিং উন্নতি চালু করেছে। iPadOS 16 (2022) Stage Manager এবং বাহ্যিক মনিটর সমর্থন এনেছে। iPadOS 17 (2023) ইন্টারঅ্যাকটিভ উইজেট এবং Lock Screen কাস্টমাইজেশন যুক্ত করেছে।

iPadOS সংস্করণবছরমূল উদ্ভাবন
iPadOS 132019Slide Over, Split View, ডেস্কটপ Safari
iPadOS 142020Apple Pencil-এর জন্য Scribble, কমপ্যাক্ট কল
iPadOS 152021Quick Note, উন্নত মাল্টিটাস্কিং ম্যানেজার
iPadOS 162022Stage Manager, বাহ্যিক 6K মনিটর
iPadOS 172023ইন্টারঅ্যাকটিভ উইজেট, Lock Screen
iPadOS 182024ক্যালকুলেটর Math Notes, Smart Script

iPadOS আর্কিটেকচার এবং iOS থেকে পার্থক্য

iPadOS iOS-এর মতো একই XNU কার্নেল এবং Darwin-এর উপর ভিত্তি করে, তবে একাধিক উইন্ডো এবং নির্দিষ্ট স্ক্রিন সাইজের জন্য অভিযোজিত একটি পরিবর্তিত UIKit শেল ব্যবহার করে। মূল আর্কিটেকচারাল পার্থক্য হল UIScene সমর্থন, যা iOS 13-এ চালু হয়েছিল।

UIScene এবং উইন্ডো লাইফসাইকেল

iPadOS-এ, প্রতিটি উইন্ডো (Split View-এর অন্তর্ভুক্ত) তার নিজস্ব লাইফসাইকেল সহ একটি পৃথক UISceneSession। iPhone-এর বিপরীতে, যেখানে একটি অ্যাপের একটি UIWindowScene থাকে, iPad-এ একটি অ্যাপের একাধিক UIScene থাকতে পারে (একাধিক উইন্ডো, Slide Over, Stage Manager)। SceneDelegate প্রতিটি উইন্ডোর অবস্থা স্বাধীনভাবে পরিচালনা করে।

swift
import UIKit
import SwiftUI

/// iPadOS-এ একাধিক উইন্ডো সমর্থনের জন্য SceneDelegate
class SceneDelegate: UIResponder, UIWindowSceneDelegate {

    var window: UIWindow?
    var splitVC: UISplitViewController?

    func scene(_ scene: UIScene,
                 willConnectTo session: UISceneSession,
                 options connectionOptions: UIScene.ConnectionOptions) {
        guard let windowScene = (scene as? UIWindowScene) else { return }

        // ট্যাবলেট ন্যাভিগেশনের জন্য UISplitViewController তৈরি করা
        let splitVC = UISplitViewController(style: .tripleColumn)
        splitVC.primaryBackgroundStyle = .sidebar

        let sidebar = SidebarViewController()
        let primary = PrimaryViewController()
        let detail = DetailViewController()

        splitVC.viewControllers = [sidebar, primary, detail]

        let window = UIWindow(windowScene: windowScene)
        window.rootViewController = splitVC
        window.makeKeyAndVisible()
        self.window = window
    }

    // উইন্ডোর আকার পরিবর্তনে অভিযোজন (Split View)
    func windowScene(_ windowScene: UIWindowScene,
                     didUpdate previousCoordinateSpace: UICoordinateSpace,
                     interfaceOrientation previousOrientation: UIInterfaceOrientation) {
        let isMultitasking = windowScene.traitCollection.horizontalSizeClass == .compact
        print("iPadOS multitasking mode: \(isMultitasking ? "compact" : "regular")")
    }
}

.tripleColumn স্টাইল সহ UISplitViewController একসঙ্গে তিনটি কলাম প্রদর্শন করে: সাইডবার (ন্যাভিগেশন), প্রাইমারি (তালিকা), এবং ডিটেল (কন্টেন্ট)। কমপ্যাক্ট মোডে (অন্য অ্যাপের সাথে Split View) রূপান্তর করার সময়, UIKit স্বয়ংক্রিয়ভাবে কলামগুলি একটি ন্যাভিগেশন স্ট্যাকে সংকুচিত করে। ডেভেলপার এই আচরণ ম্যানুয়ালি পরিচালনা করেন না — UIKit traitCollection-এর মাধ্যমে লেআউট অভিযোজিত করে।

iOS থেকে অতিরিক্ত পার্থক্য

iPadOS অফার করে: Files (USB-C/Thunderbolt)-এর মাধ্যমে বাহ্যিক স্টোরেজ সমর্থন, এলিমেন্ট পরিদর্শন সহ Safari টার্মিনাল মোড, UIKeyCommand-এর মাধ্যমে কীবোর্ড শর্টকাট, সিস্টেম ডাউনলোড ম্যানেজার, অ্যাপগুলির মধ্যে ড্র্যাগ অ্যান্ড ড্রপ এবং আকার পরিবর্তনযোগ্য উইন্ডো সহ পিকচার ইন পিকচার।

iPad-এ মাল্টিটাস্কিং: Split View, Slide Over, Stage Manager

মাল্টিটাস্কিং iPadOS-এর একটি মূল বৈশিষ্ট্য যা এটিকে iOS থেকে মৌলিকভাবে আলাদা করে। ব্যবহারকারী একটি স্ক্রিনে একাধিক অ্যাপের সাথে একসঙ্গে কাজ করতে পারে। ডেভেলপারকে নিশ্চিত করতে হবে যে অ্যাপ যেকোনো মাল্টিটাস্কিং মোডে সঠিকভাবে কাজ করে।

Split View

Split View iPad স্ক্রিনকে দুটি অ্যাপের মধ্যে 50/50 বা 33/67 অনুপাতে ভাগ করে। প্রতিটি অ্যাপ তার নিজস্ব মেমোরি এবং লাইফসাইকেল সহ নিজস্ব UISceneSession পায়। যখন স্ক্রিনের প্রস্থ 600 পয়েন্টের কম হয়, তখন UIKit জোর করে অ্যাপটিকে কমপ্যাক্ট অনুভূমিক size class-এ রূপান্তর করে। অ্যাপটিকে এই পরিবর্তন সঠিকভাবে পরিচালনা করতে হবে।

Slide Over

Slide Over সক্রিয় অ্যাপের উপরে একটি ভাসমান উইন্ডো (প্রস্থ 320 পয়েন্ট)। Slide Over-এ অ্যাপ কমপ্যাক্ট অনুভূমিক size class (.compact)-এ রূপান্তরিত হয়। সংকীর্ণ স্ক্রিনের জন্য UI অপ্টিমাইজ করা গুরুত্বপূর্ণ। Slide Over-এ, অ্যাপটি ডান প্রান্ত থেকে সোয়াইপ করে বা ডকের মাধ্যমে আহ্বান করা যেতে পারে। ব্যবহারকারী Slide Over কে Split View-এ টেনে আনতে পারেন বা ডানদিকে সোয়াইপ করে বন্ধ করতে পারেন।

Stage Manager

Stage Manager (iPadOS 16+, M1 এবং নতুন) একটি উইন্ডো ম্যানেজার যা নির্দিষ্ট আকারের ওভারল্যাপিং উইন্ডো তৈরি করার অনুমতি দেয়। iPad স্ক্রিনে 4টি উইন্ডো এবং বাহ্যিক মনিটরে 4টি (মোট 8) পর্যন্ত সমর্থিত। অ্যাপগুলি প্রতিটি নতুন উইন্ডোর জন্য UISceneWillConnectNotification ইভেন্ট পায়। Stage Manager লাইফসাইকেল নিয়ম পরিবর্তন করে: পটভূমিতে একটি উইন্ডো জমাট বাঁধে না বরং সীমিত সম্পদ নিয়ে কাজ করতে থাকে।

মোডউইন্ডোর সংখ্যাউইন্ডোর আকারSize Class
ফুল স্ক্রিন1স্ক্রিনের 100%Regular
Split View 50/502স্ক্রিনের 50%Regular (iPad Pro 12.9) বা Compact
Split View 33/67233% / 67%33%-এর জন্য Compact
Slide Over1 + ভাসমান320 ptCompact
Stage Manager1–4নির্দিষ্টআকারের উপর নির্ভর করে

Apple Pencil এবং হস্তলিখন ইনপুট

Apple Pencil হল Apple-এর সক্রিয় স্টাইলাস যাতে ঢাল, চাপ এবং hover সনাক্তকরণ সমর্থন (iPad Pro M2+) রয়েছে। পেনের গতি এবং কালি প্রদর্শনের মধ্যে লেটেন্সি মডেলের উপর নির্ভর করে 9–20 ms। PencilKit অ্যাপে ড্রইং সংহত করার জন্য প্রধান ফ্রেমওয়ার্ক।

PencilKit: ড্রইং ইন্টিগ্রেশন

PKCanvasView কালি, পেন্সিল, মার্কার এবং ইরেজারের সমর্থন সহ একটি প্রস্তুত ড্রইং পৃষ্ঠ প্রদান করে। PKToolPicker টুল নির্বাচন প্যানেল। ডেভেলপারকে স্ট্রোক রেন্ডারিং বাস্তবায়নের প্রয়োজন নেই — PencilKit এটি Metal shaders-এর সাথে হার্ডওয়্যার-ত্বরিত করে। পেনের রং, পুরুত্ব এবং অস্বচ্ছতা কাস্টমাইজেশন উপলব্ধ।

swift
import PencilKit
import UIKit

class DrawingViewController: UIViewController {

    private lazy var canvasView: PKCanvasView = {
        let canvas = PKCanvasView()
        canvas.tool = PKInkingTool(.pen, color: .black, width: 5)
        canvas.delegate = self
        canvas.drawingPolicy = .anyInput
        canvas.backgroundColor = .white
        return canvas
    }()

    private lazy var toolPicker: PKToolPicker = {
        let picker = PKToolPicker()
        picker.addObserver(canvasView)
        picker.setVisible(true, forFirstResponder: canvasView)
        return picker
    }()

    override func viewDidLoad() {
        super.viewDidLoad()
        view.addSubview(canvasView)
        canvasView.frame = view.bounds
        canvasView.becomeFirstResponder()
        toolPicker.addObserver(canvasView)
    }

    // PKDrawing-এ ড্রইং সংরক্ষণ (বাইনারি ফরম্যাট)
    func saveDrawing() {
        let drawingData = canvasView.drawing.dataRepresentation()
        let url = FileManager.default.urls(
            for: .documentDirectory, in: .userDomainMask
        )[0].appendingPathComponent("drawing.drawing")
        try? drawingData.write(to: url)
    }
}

extension DrawingViewController: PKCanvasViewDelegate {
    func canvasViewDrawingDidChange(_ canvasView: PKCanvasView) {
        print("Canvas changed: \(canvasView.drawing.strokes.count) strokes")
    }
}

PKCanvasView drawingPolicy .anyInput সহ Apple Pencil এবং আঙুল উভয় ইনপুট গ্রহণ করে। PKToolPicker ব্যবহারকারীকে কাস্টম UI লিখতে ছাড়াই টুল নির্বাচন দেয়। PKDrawing উচ্চ সংকোচনের সাথে বাইনারি ফরম্যাটে সংরক্ষিত হয় — এক ঘন্টার ড্রইং প্রায় 5–10 MB নেয়।

Scribble এবং টেক্সট শনাক্তকরণ

Scribble (iPadOS 14+) যেকোনো UITextField এবং UITextView-এ হস্তলিখনের অনুমতি দেয়। সিস্টেম Neural Engine ব্যবহার করে ডিভাইসে হস্তলিখন শনাক্ত করে। ML মডেল ল্যাটিন এবং সিরিলিক লিপির সাথে কাজ করে। iOS 17+-এ, Scribble অটোকারেকশন এবং পরবর্তী শব্দ পূর্বাভাস সমর্থন করে। ডেভেলপারকে কোড যোগ করার প্রয়োজন নেই — Scribble যেকোনো ইনপুট ফিল্ডের সাথে স্বয়ংক্রিয়ভাবে কাজ করে।

Apple Pencil Pro-এর জন্য Hover API

iPadOS 17.4 এবং Apple Pencil Pro থেকে শুরু করে, ডেভেলপাররা hover ইভেন্ট পায় যখন স্টাইলাস স্ক্রিনের কাছে আসে (12 mm পর্যন্ত)। ইভেন্টে অবস্থান, বল এবং আজিমুথ থাকে। প্রয়োগ: ড্রইং অ্যাপে ব্রাশ contact পয়েন্টের পূর্বরূপ, টুল পূর্বরূপ, স্পর্শের আগে ভিজুয়াল প্রতিক্রিয়া।

iPad-এর জন্য ইন্টারফেস অভিযোজন

অভিযোজিত ইন্টারফেস iPad অ্যাপগুলির জন্য একটি বাধ্যতামূলক প্রয়োজনীয়তা। iPad বিভিন্ন স্ক্রিন সাইজ (8.3"–13") এবং মাল্টিটাস্কিং মোডে কাজ করে। UIKit স্বয়ংক্রিয় অভিযোজনের জন্য Size Classes (অনুভূমিক: .regular/.compact, উল্লম্ব: .regular/.compact) এবং UISplitViewController প্রদান করে।

Size Classes এবং traitCollection

Size Classes একটি বিমূর্ততা যা উপলব্ধ স্থান নির্ধারণ করে। iPad-এ ফুল-স্ক্রিন মোডে, উভয় অক্ষ .regular। Split View (50%)-এ, অনুভূমিক class iPad mini বা iPad Air-এ .compact হতে পারে। Auto Layout এবং UICollectionViewCompositionalLayout-এর উপর নির্মিত সমস্ত জনপ্রিয় লেআউট স্বয়ংক্রিয়ভাবে অভিযোজিত হয়। কাস্টম অভিযোজন traitCollectionDidChange ওভাররাইড করে করা হয়।

swift
import SwiftUI

/// Size Classes ব্যবহার করে iPad-এর জন্য অভিযোজিত লেআউট
struct AdaptiveContentView: View {
    @Environment(\.horizontalSizeClass) private var horizontalSizeClass
    @Environment(\.verticalSizeClass) private var verticalSizeClass

    var body: some View {
        if horizontalSizeClass == .regular && verticalSizeClass == .regular {
            // ট্যাবলেট মোড: সাইডবার + কন্টেন্ট
            NavigationSplitView {
                SidebarView()
            } detail: {
                ContentGridView()
            }
        } else {
            // কমপ্যাক্ট মোড: স্ট্যাক ন্যাভিগেশন
            NavigationStack {
                ContentGridView()
            }
        }
    }
}

/// অভিযোজিত গ্রিড উদাহরণ: iPad-এ 3 কলাম, iPhone-এ 2
struct ContentGridView: View {
    @Environment(\.horizontalSizeClass) private var horizontalSizeClass

    private var columns: [GridItem] {
        let count = horizontalSizeClass == .regular ? 3 : 2
        return Array(repeating: GridItem(.flexible(), spacing: 16), count: count)
    }

    var body: some View {
        ScrollView {
            LazyVGrid(columns: columns, spacing: 16) {
                ForEach(items) { item in
                    ItemCard(item: item)
                }
            }
            .padding()
        }
    }
}

উদাহরণে, NavigationSplitView শুধুমাত্র তখন ব্যবহৃত হয় যখন horizontalSizeClass == .regular (ফুল-স্ক্রিন iPad)। NavigationStack কমপ্যাক্ট মোডে ব্যবহৃত হয়। গ্রিড কলামের সংখ্যা (3 বনাম 2) Size Classes-এর উপর নির্ভর করে পরিবর্তিত হয়। মাল্টিটাস্কিং মোড পরিবর্তন হলে সবকিছু স্বয়ংক্রিয়ভাবে আপডেট হয়।

UISplitViewController: তিন-কলাম ন্যাভিগেশন

UIKit তিনটি স্টাইল সহ UISplitViewController প্রদান করে: .doubleColumn (সাইডবার + ডিটেল), .tripleColumn (সাইডবার + প্রাইমারি + ডিটেল), এবং .single। iPadOS 16+-এ, size class পরিবর্তন হলে splitViewController স্বয়ংক্রিয়ভাবে স্টাইলগুলির মধ্যে সুইচ করে। ডেভেলপার প্রতিটি কলামের জন্য viewControllers সেট করে, UIKit দৃশ্যমানতা পরিচালনা করে।

iPadOS-এর জন্য ফ্রেমওয়ার্ক এবং API

iPadOS SDK-এ সমস্ত iOS ফ্রেমওয়ার্কের পাশাপাশি শুধুমাত্র iPad-এ উপলব্ধ API অন্তর্ভুক্ত রয়েছে। নীচে মূল iPad-নির্দিষ্ট ক্ষমতাগুলি দেওয়া হল।

ড্র্যাগ অ্যান্ড ড্রপ

iPadOS অ্যাপগুলির মধ্যে এবং অ্যাপের মধ্যে ড্র্যাগ অ্যান্ড ড্রপ সমর্থন করে। UIDragInteraction এবং UIDropInteraction টেক্সট, ইমেজ, ফাইল এবং কাস্টম অবজেক্ট টেনে আনার অনুমতি দেয়। ড্র্যাগ অ্যান্ড ড্রপ মাল্টি-টাচের সাথে একসঙ্গে কাজ করে: ব্যবহারকারী বিভিন্ন আঙুল দিয়ে একাধিক আইটেম টেনে আনতে পারে। SwiftUI-তে, .onDrag এবং .onDrop মডিফায়ার ব্যবহার করা হয়।

কীবোর্ড শর্টকাট

যখন একটি কীবোর্ড সংযুক্ত থাকে (Magic Keyboard, Smart Keyboard), UIKeyCommand হটকি যোগ করার অনুমতি দেয়। iPadOS 17+-এ, Cmd চেপে ধরে রাখলে কীবোর্ড শর্টকাট প্রদর্শিত হয়। Apple মানক সমন্বয় সমর্থন করার সুপারিশ করে: ⌘C (কপি), ⌘V (পেস্ট), ⌘F (অনুসন্ধান), ⌘N (নতুন ডকুমেন্ট)।

বাহ্যিক মনিটর

iPadOS 17+ 6K (Pro Display XDR) পর্যন্ত নেটিভ রেজোলিউশন সহ বাহ্যিক মনিটর সমর্থন করে। একটি অ্যাপ একটি পৃথক সেশন শনাক্তকারী সহ UIWindowScene-এর মাধ্যমে বাহ্যিক স্ক্রিনে কন্টেন্ট প্রদর্শন করতে পারে। Stage Manager একটি বাহ্যিক মনিটরে আকার পরিবর্তনযোগ্য মাত্রা সহ 4টি উইন্ডো পর্যন্ত রাখার অনুমতি দেয়।

APIউদ্দেশ্যiOS-এ উপলব্ধ
UISplitViewControllerবহু-কলাম ন্যাভিগেশনহ্যাঁ
PencilKitApple Pencil ড্রইংনা
UIDragInteractionড্র্যাগ অ্যান্ড ড্রপহ্যাঁ (শুধুমাত্র অ্যাপের মধ্যে)
UIKeyCommandকীবোর্ড শর্টকাটহ্যাঁ (শুধুমাত্র বাহ্যিক কীবোর্ড)
UISceneমাল্টি-উইন্ডো মোডহ্যাঁ (শুধুমাত্র iPad)
UIPencilInteractionApple Pencil ডাবল ট্যাপনা
PDFKitPDF দেখা এবং টীকাহ্যাঁ

iPad-এর জন্য অ্যাপ অপ্টিমাইজেশন

iPadOS-এর জন্য ডেভেলপমেন্টের UI/UX, কর্মক্ষমতা এবং পরীক্ষার জন্য একটি বিশেষ পদ্ধতির প্রয়োজন। iPhone-এ ক্ষমাযোগ্য ত্রুটিগুলি বড় স্ক্রিন এবং মাল্টিটাস্কিং-এর কারণে iPad-এ গুরুতর হয়ে ওঠে।

কর্মক্ষমতা এবং মেমোরি

iPad 16 GB পর্যন্ত ইউনিফাইড মেমোরি সহ M-সিরিজ চিপ (M1, M2, M4) ব্যবহার করে। শক্তিশালী হার্ডওয়্যার সত্ত্বেও, Split View বা Slide Over-এ একটি অ্যাপ অন্য অ্যাপের সাথে সম্পদ ভাগ করে। মেমোরি চাপ iPhone-এর তুলনায় বেশি। ইমেজ কম্প্রেশন, কালেকশনের লেজি লোডিং এবং Instruments Allocations-এর মাধ্যমে প্রোফাইলিং ব্যবহার করুন। 16 GB সহ iPad Pro M4 ডেস্কটপ-ক্লাস অ্যাপ (Final Cut Pro, Logic Pro) চালানোর অনুমতি দেয়।

কীবোর্ড ফার্স্ট ডিজাইন

বেশিরভাগ iPad ব্যবহারকারী বাহ্যিক কীবোর্ড ব্যবহার করেন। ইন্টারফেসটি সম্পূর্ণরূপে কীবোর্ড-ন্যাভিগেবল হওয়া উচিত: ফিল্ড ন্যাভিগেশনের জন্য Tab, নির্বাচিত উপাদান সক্রিয় করার জন্য Space, নিশ্চিতকরণের জন্য Enter। Full Keyboard Access-এর জন্য সমর্থন যোগ করুন — একটি সিস্টেম সেটিং যা কীবোর্ডের সাথে যেকোনো UI উপাদান নিয়ন্ত্রণের অনুমতি দেয়।

বাস্তব ডিভাইসে পরীক্ষা

iPad সিমুলেটর মাল্টিটাস্কিং আচরণ সম্পূর্ণরূপে পুনরুত্পাদন করে না। বিভিন্ন মোডে বাস্তব ডিভাইসে পরীক্ষা করুন: ভারী অ্যাপ (20 ট্যাব সহ Safari) সহ Split View, 4টি উইন্ডো সহ Stage Manager, দ্রুত অ্যাপ সুইচিং সহ Slide Over। দৃশ্যটি পরীক্ষা করুন: ব্যবহারকারী Slide Over থেকে অ্যাপ খোলে, এটি Split View-এ টেনে আনে, আকার পরিবর্তন করে, বন্ধ করে — অ্যাপ ক্র্যাশ হওয়া উচিত নয়।

objective-c
// iPadOS-এ বর্তমান মাল্টিটাস্কিং মোড পরীক্ষা
- (void)checkMultitaskingMode:(UIWindowScene *)scene {
    if (scene.traitCollection.userInterfaceIdiom != UIUserInterfaceIdiomPad) {
        return;
    }

    BOOL isFullScreen = (scene.traitCollection.horizontalSizeClass == UIUserInterfaceSizeClassRegular &&
                              scene.traitCollection.verticalSizeClass == UIUserInterfaceSizeClassRegular);

    BOOL isSlideOver = (CGRectGetWidth(scene.coordinateSpace.bounds) == 320.0);

    if (scene.windows.first?.windowScene?.activationConditions.canBecomeFocused == YES) {
        NSLog(@"Stage Manager সক্রিয়");
    }

    if (isSlideOver) {
        NSLog(@"Slide Over মোড");
    } else if (isFullScreen) {
        NSLog(@"ফুল স্ক্রিন মোড");
    } else {
        NSLog(@"Split View মোড");
    }
}

প্রায়শই জিজ্ঞাসিত প্রশ্ন

iPadOS iOS থেকে কীভাবে আলাদা?

iPadOS-এ বিস্তৃত মাল্টিটাস্কিং (Split View, Slide Over, Stage Manager), hover সনাক্তকরণ সহ Apple Pencil সমর্থন, ডাউনলোড ম্যানেজার সহ ডেস্কটপ Safari, নেটিভ রেজোলিউশন সহ বাহ্যিক মনিটর এবং USB-C-এর মাধ্যমে বাহ্যিক ড্রাইভে অ্যাক্সেস সহ Files ফাইল সিস্টেম রয়েছে।

কীভাবে একটি অ্যাপে Split View সমর্থন যুক্ত করব?

Split View স্বয়ংক্রিয়ভাবে সমর্থিত যদি অ্যাপ UISplitViewController ব্যবহার করে। অ্যাপটিকে size class পরিবর্তনগুলি সঠিকভাবে পরিচালনা করতে হবে: কমপ্যাক্ট মোডে রূপান্তর করার সময়, স্ক্রিন স্ট্যাকের জন্য UINavigationController ব্যবহার করুন। Split View থেকে স্পষ্টভাবে অপ্ট আউট করতে, Info.plist-এ UIRequiresFullScreen = YES উল্লেখ করুন।

কীভাবে একটি অ্যাপে Apple Pencil সংহত করব?

PencilKit ব্যবহার করুন: ড্রইং পৃষ্ঠের জন্য PKCanvasView এবং টুল নির্বাচনের জন্য PKToolPicker। কাস্টম স্টাইলাস ইনপুট হ্যান্ডলিংয়ের জন্য — .hover টাইপ সহ UIEvent এবং ডাবল ট্যাপের জন্য UIPencilInteraction। Apple Pencil Pro-এর লেটেন্সি 9 ms, পূর্ববর্তী প্রজন্ম — 20 ms।

iPad-এর স্ক্রিন সাইজগুলি কী কী?

iPad mini 8.3" (2266×1488), iPad Air 10.9" (2360×1640), iPad Pro 11" (2388×1668), iPad Pro 13" M4 (2752×2064)। অভিযোজনের জন্য Size Classes এবং Auto Layout ব্যবহার করুন। Thunderbolt-এর মাধ্যমে 6K পর্যন্ত বাহ্যিক মনিটর। Stage Manager 8টি উইন্ডো পর্যন্ত সমর্থন করে (iPad-এ 4 + বাহ্যিক মনিটরে 4)।

iPadOS কি বাহ্যিক মনিটর সমর্থন করে?

iPadOS 17+ USB-C/Thunderbolt-এর মাধ্যমে 6K পর্যন্ত নেটিভ রেজোলিউশন সহ বাহ্যিক মনিটর সমর্থন করে। একটি অ্যাপ তার নিজস্ব লাইফসাইকেল সহ একটি পৃথক UIWindowScene-এর মাধ্যমে বাহ্যিক মনিটরে কন্টেন্ট প্রদর্শন করতে পারে। Stage Manager একটি বাহ্যিক মনিটরে 4টি উইন্ডো পর্যন্ত সমর্থন করে।

সারাংশ

  • iPadOS মাল্টিটাস্কিং, Apple Pencil এবং ডেস্কটপ Safari সহ Apple-এর ডেডিকেটেড iPad OS
  • মাল্টিটাস্কিং-এর মধ্যে রয়েছে Split View, Slide Over (320 pt) এবং Stage Manager (8টি উইন্ডো পর্যন্ত)
  • Apple Pencil PencilKit-এর মাধ্যমে 9–20 ms লেটেন্সি এবং hover API সহ সমর্থিত
  • অভিযোজিত UI সমস্ত মোডের জন্য Size Classes এবং UISplitViewController ব্যবহার করে
  • iPadOS SDK-এ ড্র্যাগ অ্যান্ড ড্রপ, UIKeyCommand, বাহ্যিক 6K মনিটর এবং UIScene অন্তর্ভুক্ত
  • Stage Manager (M1+) নির্দিষ্ট আকারের ওভারল্যাপিং উইন্ডোর অনুমতি দেয়
  • পরীক্ষা সমস্ত মাল্টিটাস্কিং মোডে বাস্তব ডিভাইসে বাধ্যতামূলক

আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব

IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।

প্রকল্প নিয়ে আলোচনা করুন

আরও পড়ুন