दिलचस्प पोस्ट
Setuptools setup.py फ़ाइल में install_requires के लिए संदर्भ requirements.txt? IPhone ऐप स्क्रीनकास्ट का निर्माण करने के लिए मैं कौन सा उपकरण (उपकरण) का उपयोग कर सकता हूं? MySQL इंजेक्शन और क्रॉस साइट स्क्रिप्टिंग से बचाव करने का सर्वोत्तम तरीका असाधारण त्रुटियों के लिए वास्तव में अपवाद हैं? दबाने वाली "कभी भी प्रयोग नहीं किया जाता" और सी # में चेतावनियों को "असाइन नहीं किया जाता" IOS ऐप में JSON को कैसे पार्स करना है एनएसटीईएम अंतराल NSDate को कैसे आर में बैकस्लैश से बचें? किसी गतिविधि में नेविगेशन बार को स्थायी रूप से छिपाएं Stdin को इंगित करने वाली एक फ़ाइल सूचक के साथ गलती का उपयोग करना एक वैध सीएसएस के साथ आईई 7 और आईई 8 कैसे लक्षित करता है? डिवाइस परिवर्तन (जोड़ें / निकालें) ईवेंट की जांच करें Angular2 में उल्लू कैरोल का उपयोग कैसे करें? कैसे गिट मर्ज विवाद को हल करने के लिए? कैसे कुछ साइट यूआरएल एक फ़ाइल एक्सटेंशन शामिल नहीं है?

कोई एनीमेशन के साथ xcode में segue दबाएं

मैं सामान्य स्टोरीबोर्डिंग का उपयोग कर रहा हूं और एक्सडोड में सेग्यूज़ को पुश कर रहा हूं, लेकिन मुझे लगता है कि अगले दृश्य को प्रदर्शित करने के लिए केवल अगले दृश्य दिखाई देने वाले सेगों को रखना है (जैसा कि आप एक टैब बार का उपयोग करते हैं और अगले दृश्य अभी दिखता है)।

क्या कस्टम सेगेज को जोड़ने की आवश्यकता के बिना सामान्य पुश सेग्यूज़ सिर्फ "दिखाई" और "स्लाइड" नहीं करने का एक सरल आसान तरीका है?

सब कुछ पूरी तरह से ठीक काम कर रहा है, मैं दृश्यों के बीच उस स्लाइड एनीमेशन को निकालना चाहता हूं।

Solutions Collecting From Web of "कोई एनीमेशन के साथ xcode में segue दबाएं"

मैं एक कस्टम सेग्यू ( इस लिंक के आधार पर) बनाकर ऐसा करने में सक्षम था।

  1. एक नया सेग्यू क्लास बनाएं (नीचे देखें)।
  2. अपना स्टोरीबोर्ड खोलें और सेग्यू का चयन करें
  3. PushNoAnimationSegue (या जो भी आप इसे कॉल करने का निर्णय लिया) को क्लास सेट करें।

Xcode में सेग्यू क्लास निर्दिष्ट करें

स्विफ्ट 4

 import UIKit /* Move to the next screen without an animation. */ class PushNoAnimationSegue: UIStoryboardSegue { override func perform() { self.source.navigationController?.pushViewController(self.destination, animated: false) } } 

उद्देश्य सी

PushNoAnimationSegue.h

 #import <UIKit/UIKit.h> /* Move to the next screen without an animation. */ @interface PushNoAnimationSegue : UIStoryboardSegue @end 

PushNoAnimationSegue.m

 #import "PushNoAnimationSegue.h" @implementation PushNoAnimationSegue - (void)perform { [self.sourceViewController.navigationController pushViewController:self.destinationViewController animated:NO]; } @end 

आप आईओएस 9 के लिए इंटरफेस बिल्डर में "एनिमेट्स" को अनचेक कर सकते हैं

यहां छवि विवरण दर्ज करें

इयान का जवाब महान काम करता है!

अगर किसी की जरूरत है, तो यहां सेग्यू का स्विफ्ट संस्करण है:

PushNoAnimationSegue.swift

 import UIKit /// Move to the next screen without an animation. class PushNoAnimationSegue: UIStoryboardSegue { override func perform() { let source = sourceViewController as UIViewController if let navigation = source.navigationController { navigation.pushViewController(destinationViewController as UIViewController, animated: false) } } } 

मैंने अब यह निम्न कोड का उपयोग करने में कामयाब रहा है:

 CreditsViewController *creditspage = [self.storyboard instantiateViewControllerWithIdentifier:@"Credits"]; [UIView beginAnimations:@"flipping view" context:nil]; [UIView setAnimationDuration:0.75]; [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.navigationController.view cache:YES]; [self.navigationController pushViewController:creditspage animated:NO]; [UIView commitAnimations]; 

मनाइए कि यह किसी और के लिए सहायक हो!

एनिमेशन के बिना एक ViewController को मौलिक रूप से पेश करने के लिए स्वीफ्ट संस्करण यहां दिया गया है:

 import UIKit /// Present the next screen without an animation. class ModalNoAnimationSegue: UIStoryboardSegue { override func perform() { self.sourceViewController.presentViewController( self.destinationViewController as! UIViewController, animated: false, completion: nil) } } 

Xamarin IOS का उपयोग करने वाले प्रत्येक व्यक्ति के लिए अपने कस्टम सेग्यू क्लास को इस तरह दिखना चाहिए:

 [Register ("PushNoAnimationSegue")] public class PushNoAnimationSegue : UIStoryboardSegue { public PushNoAnimationSegue(IntPtr handle) : base (handle) { } public override void Perform () { SourceViewController.NavigationController.PushViewController (DestinationViewController, false); } } 

मत भूलो कि आपको अभी भी अपनी कहानी बोर्ड में एक कस्टम सेगू सेट करने की आवश्यकता है और पुश नोनएनिमेशन एसईजीई क्लास में क्लास को सेट करें।

स्विफ्ट 3 का उपयोग करते हुए उत्तर दें

"पुश" सेगू के लिए:

 class PushNoAnimationSegue: UIStoryboardSegue { override func perform() { source.navigationController?.pushViewController(destination, animated: false) } } 

"मोडल" सेगू के लिए:

 class ModalNoAnimationSegue: UIStoryboardSegue { override func perform() { self.source.present(destination, animated: false, completion: nil) } } 

मेरे लिए, ऐसा करने का सबसे आसान तरीका है:

 UIView.performWithoutAnimation { self.performSegueWithIdentifier("yourSegueIdentifier", sender: nil) } 

आईओएस 7.0 से उपलब्ध है

मैं विजुअल स्टूडियो डब्ल्यू / एक्सरामिन का उपयोग कर रहा हूं, और डिजाइनर डीटोकेट्टो के जवाब में "एनिमेट्स" चेकमार्क प्रदान नहीं करता है।

नोट करें कि XCode डिजाइनर निम्न विशेषता को .storyboard फ़ाइल में सेग्यू तत्व पर लागू करेगा: एनिमेट्स = "नहीं"

मैं मैन्युअल रूप से .storyboard फ़ाइल को संपादित और एनिमेटेड = "नहीं" जोड़कर तत्व (एस) के लिए जोड़ा, और यह मेरे लिए काम किया

उदाहरण:

  <segue id="1234" destination="ZB0-vP-ctU" kind="modal" modalTransitionStyle="crossDissolve" animates="NO" identifier="screen1ToScreen2"/> 

बस स्विफ्ट में UINavigationController.pushViewController पर animated UINavigationController.pushViewController सेट करें

 self.navigationController!.pushViewController(viewController, animated: false)