প্রোগ্রামে আইওএসে নেভিগেশন কন্ট্রোলার ব্যাক বোতাম কল করুন


85

একটি ইউআইএনএভিগেশন কন্ট্রোলার-ভিত্তিক আইফোন অ্যাপ্লিকেশনটিতে, একটি পদ্ধতিতে আমি পিছনের বোতামটি টিপানো এবং একটি দৃশ্যের পিছনে ফিরে যাওয়ার প্রোগ্রামের সমতুল্য সম্পাদন করতে চাই।

অর্থাত এখানে দেখা হিসাবে স্বয়ংক্রিয়ভাবে জবস বোতাম টিপুন:

নেভিগেশন কন্ট্রোলার চিত্র

আমি যে জেনেরিক আইওএস কল করতে পারি তা কি আরও আছে বা আরও তথ্যের প্রয়োজন আছে?

উত্তর:


189

UINavigationControllerএর -popViewControllerAnimated:পদ্ধতিটি আপনার যা করা উচিত তা করা উচিত:

[navigationController popViewControllerAnimated:YES];

12
দুর্দান্ত, স্টিভ এবং নীলসকে ধন্যবাদ। আমি যে সমাধানটি ব্যবহার করেছি তা হ'ল [স্ব-নেভিগেশন কন্ট্রোলার পপভিউ কন্ট্রোলার অ্যানিমেশনযুক্ত: হ্যাঁ]; সহজ;)
ওবারবাম

ইউটিববারে ভিউকন্ট্রোলার যুক্ত হওয়া ছাড়া এটি দুর্দান্ত কাজ করে। কোন সংকেত সনাক্ত করুন??
ভাইরাত

4
আমি যোগ করেছি [self.navigationController popViewControllerAnimated:YES];তবে এটি কিছুই করে না, তবে সেই বোতামটি টেপ করার বিষয়ে একটি সতর্কতা রয়েছে যা কাজ করছে।
mohsin.mr

হুম, আমি একটি ফাঁকা স্ক্রিন, একটি প্রতিক্রিয়াহীন অ্যাপ এবং কনসোলে নিম্নলিখিতগুলি পেয়েছি: "অপ্রত্যাশিত অবস্থায় নেভিগেশন ট্রানজিশন শেষ করা হচ্ছে Nav নেভিগেশন বার সাবভিউ ট্রিটি ক্ষতিগ্রস্ত হতে পারে।"
কার্ট

24

ধরে নিই আপনি প্রোগ্রামটিমে বাটনটি টিপতে চান না, তবে কেবল বোতামটি চাপার ফলাফলটি অনুলিপি করুন, আপনার বর্তমান ভিউ নিয়ন্ত্রণকারীকে পপ করতে নেভিগেশন কন্ট্রোলারকে বলা উচিত।

[self.navigationController popViewControllerAnimated:YES];

এটি স্ট্যাক থেকে এটি সরিয়ে ফেলবে এবং আপনাকে পূর্ববর্তী ভিউ নিয়ন্ত্রকের কাছে ফিরিয়ে আনবে।


21

সুইফট 3.0

রুট ভিউতে ফিরে যান

self.navigationController?.popToRootViewController(animated: true)

আগের দৃশ্যে ফিরে যান

self.navigationController?.popViewController(animated: true)

সুইফট 2.3

রুট ভিউতে ফিরে যান

self.navigationController?.popToRootViewControllerAnimated(true)

আগের দৃশ্যে ফিরে যান

self.navigationController?.popViewControllerAnimated(true)

7

আপনার ফোন করা উচিত

popViewControllerAnimated:

যা দিয়ে ভিউ কন্ট্রোলার যুক্ত করার বিপরীত pushViewController:animated:


6
[self.navigationController popViewControllerAnimates:YES];

সর্বোত্তম বিকল্প তবে আপনি যদি না হন তবে একই ভিউ নিয়ন্ত্রক শ্রেণিতে না থাকলে বা আপনার প্রতিনিধি পরিবর্তিত আপনার পিছনের বোতামের পদ্ধতির পরিবর্তে আপনি চেষ্টা করতে পারেন--

প্রথমে আপনাকে ব্যাক বোতামটি নির্ধারণ করতে হবে ---

UIBarButtonItem *newBackButton = [[UIBarButtonItem alloc] initWithTitle: @"anyTitleForBackButton" style: UIBarButtonItemStyleBordered target: nil action: @selector(backButtonTapped)];

[[self navigationItem] setBackBarButtonItem: newBackButton];

[newBackButton release];

এবং তারপরে ব্যাকব্যাটনযুক্ত পদ্ধতিতে আপনি কল করতে পারেন -

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