সুইফট - নেভিগেশন আইটেমে কীভাবে পিছনে বোতামটি লুকানো যায়?


105

এই মুহূর্তে আমার কাছে দুটি ভিউ কন্ট্রোলার রয়েছে। আমার সমস্যাটি হ'ল আমি জানি না কীভাবে দ্বিতীয় ভিউ কন্ট্রোলারে স্থানান্তরিত হওয়ার পরে পিছনের বোতামটি গোপন করতে হয়। বেশিরভাগ রেফারেন্স যা আমি পেয়েছি সেগুলি অবজেক্টিভ-সি-তে রয়েছে। আমি কীভাবে এটি সুইফটে কোড করব?

উদ্দেশ্য-সি তে পিছনে বোতামের কোডটি লুকান

[self.navigationItem setHidesBackButton:YES animated:YES];

উত্তর:


376

মতে ডকুমেন্টেশন জন্য UINavigationItem:

self.navigationItem.setHidesBackButton(true, animated: true)

31
snarkiness বিনামূল্যে জন্য।
গ্রেগ

59
এটি আপনাকে পলউ 11 এ ভীত করে তুলতে পারে, তবে সরল সত্যটি হ'ল গুগলে "সুইফট হাইড ব্যাক বোতাম" টাইপ করা এবং এখানে আসার মতো - আমি যেমনটি করেছি - অফিসিয়াল ডকুমেন্টেশনে টেক্সটের রিমগুলি দিয়ে হাল চাষের চেয়ে টন দ্রুত।
জোসেফ বিউইস 'মম

4
ব্যাক বোতামটির নামটি প্রথম ভিউ কন্ট্রোলারে সংজ্ঞায়িত করা হয়েছে, তবে এটি লক্ষ্য করা আকর্ষণীয় হতে পারে যে এটি আড়াল করার কোডটি অবশ্যই দ্বিতীয় ভিউ নিয়ন্ত্রকের (বাটনটি দেখানো একটি) প্রয়োগ করা উচিত।
XLE_22

40

আপনি যদি একটি ব্যবহার করছেন UITabBarController:

override func viewWillAppear(animated: Bool) {
    super.viewWillAppear(animated)
    self.tabBarController?.navigationItem.hidesBackButton = true
}

আমার জন্য একই, তবে আমি কেন বুঝতে চাই। কেউ কি জানেন যে গৃহীত উত্তর এবং এই পদ্ধতির মধ্যে পার্থক্য কী? আমি কেবল ভাবতে পারি উত্তরাধিকারের মডেল বনাম নেভিগেশন বারের একটি স্থির সংস্করণ।
হেলমুট গ্র্যান্ডা

4
@ হেলমুটগ্রান্ডা যদি আপনি লক্ষ্য করেন যে ব্রুনো একটি ট্যাব বার নিয়ামক ব্যবহার করছে, তবে এটি তফাত। গৃহীত উত্তরের ক্ষেত্রে, ভিসি সম্ভবত একটি নেভিগেশন নিয়ামককে এম্বেড করা হয়েছে।
ক্লাউডকাল

@ ক্লাউডক্যাল আমি একটি ট্যাববার ব্যবহার করছি না, তবুও উভয় উত্তর কাজ করেছে। দুজনেই পিছনের বোতামটি লুকিয়ে রেখেছিল। আমি ভেবেছিলাম ভিউ কন্ট্রোলার যদি পর্দায় থাকে তবে তারা পিছনে বোতামটি আড়াল করতে চাইলে তারা অন্যরকম আচরণ করবে । তবুও তারা আবার একই রকম অভিনয় করেছিলেন। আমি তাদের মধ্যে কোনও পার্থক্য খুঁজে পাচ্ছিলাম না। আমি বলছি ব্রুনোর উত্তরটি ভুল। বরং খাঁটি নেভিগেশন নিয়ন্ত্রকের জন্য এটি কোনও পার্থক্য করে না। আমি ট্যাববারকন্ট্রোলার চেষ্টা করিনি
মধু

21

সুইফট

// remove left buttons (in case you added some)
 self.navigationItem.leftBarButtonItems = []
// hide the default back buttons
 self.navigationItem.hidesBackButton = true

এটি পরিষ্কার যে নেভিগেশনআইটাম.হাইডসব্যাকবটন = সত্যই সঠিক উত্তর। যদি বাম বোতাম থাকে, যা ক্ষেত্রে হতে পারে তবে এটি অবশ্যই সঠিক উত্তর, এবং আরও সম্পূর্ণ উত্তর হিসাবে বিবেচনা করা উচিত।
truedat101

self.navigationItem.hidesBackButton = trueএটি প্রত্যাশার মতো কাজ করছে।
শাহাবুদ্দিন ভানসীওয়ালা

আমার ক্ষেত্রে বেশ কয়েকটি নেভিগেশন নিয়ন্ত্রণকারীদের সাথে কেবল এটিই
ওলেকসান্ডার

9

এটি ইউআইএনএভিগেশন কন্ট্রোলার ক্লাস ডকুমেন্টেশনেও পাওয়া যায়:

navigationItem.hidesBackButton = true


0

উত্তরটির একটি সংস্করণ এখানে

সুইফট 5

যে আপনি স্টোরিবোর্ড থেকে এটি ব্যবহার করতে পারেন:

// MARK: - Hiding Back Button

extension UINavigationItem {

    /// A Boolean value that determines whether the back button is hidden.
    ///
    /// When set to `true`, the back button is hidden when this navigation item
    /// is the top item. This is true regardless of the value in the
    /// `leftItemsSupplementBackButton` property. When set to `false`, the back button
    /// is shown if it is still present. (It can be replaced by values in either
    /// the `leftBarButtonItem` or `leftBarButtonItems` properties.) The default value is `false`.
    @IBInspectable var hideBackButton: Bool {
        get { hidesBackButton }
        set { hidesBackButton = newValue }
    }
}

একটি ভিউ কন্ট্রোলারের প্রতিটি নেভিগেশন আইটেমের বৈশিষ্ট্য পরিদর্শকের শীর্ষ বিভাগে এই নতুন সম্পত্তি থাকবে


0

এটি আমার জন্য একটি কবজির মতো সুইফট 5 এ কাজ করেছে, এটি কেবল আপনার দর্শনে যুক্ত করুনডিলোড ()

self.navigationItem.setHidesBackButton(true, animated: true)


-4

এখানে চিত্র বর্ণনা লিখুন

বৈশিষ্ট্য পরিদর্শক যান এবং পিছনে বোতামটি আড়াল করতে নেভিগেশন বারটি আনচেক করুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.