একটি সাধারণ ইউআইএলআর্টভিউ যুক্ত করা হচ্ছে


108

কোনও স্টার্টার কোডটি কী আমি একটি "ওকে" বোতামের সাহায্যে একটি সাধারণ ইউআইএলআর্টভিউ তৈরি করতে ব্যবহার করতে পারি?


ঠিক আছে বাটনটি ক্লিক না করা পর্যন্ত আপনি কি কোনও ক্রিয়া সম্পাদনের জন্য অপেক্ষা করতে চান?
sudo rm -rf

1
@ সুডো আরএম-আরএফ: না, "ডি দে ডু ডু" বা কিছু বলার জন্য আমার এটি দরকার। কোন ক্রিয়া প্রয়োজন।
লিনাক্সমিন্ট

উত্তর:


230

আপনি যখন সতর্কতাটি প্রদর্শন করতে চান, এটি করুন:

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"ROFL" 
                                                    message:@"Dee dee doo doo." 
                                                    delegate:self 
                                                    cancelButtonTitle:@"OK" 
                                                    otherButtonTitles:nil];
[alert show];

    // If you're not using ARC, you will need to release the alert view.
    // [alert release];

বোতামটি ক্লিক করার পরে আপনি যদি কিছু করতে চান তবে এই প্রতিনিধি পদ্ধতিটি প্রয়োগ করুন:

- (void)alertView:(UIAlertView *)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex {
    // the user clicked OK
    if (buttonIndex == 0) {
        // do something here...
    }
}

এবং নিশ্চিত করুন যে আপনার প্রতিনিধি UIAlertViewDelegateপ্রোটোকলের সাথে সম্মত হয়েছে :

@interface YourViewController : UIViewController <UIAlertViewDelegate> 

4
ডেলিগেট কে ডেকেছেন তা নির্ধারণ করতে আপনার যদি 1 টির বেশি সতর্কতা অবলম্বন থাকে তবে আপনি ট্যাগগুলি ব্যবহার করতে পারেন।
Pnar Sbi Wer

71

অন্যান্য উত্তরগুলি ইতিমধ্যে আইওএস 7 এবং তার UIAlertViewচেয়েও পুরনো আইওএস 8-তে তথ্য সরবরাহ করে

আইওএস 8+ এ আপনার ব্যবহার করা উচিত UIAlertController। এটি উভয়ের জন্য প্রতিস্থাপন UIAlertViewএবং UIActionSheet। ডকুমেন্টেশন: ইউআইএলআর্টকন্ট্রোলার শ্রেণি রেফারেন্স । এবং এনএসএইচসিস্টার একটি দুর্দান্ত নিবন্ধ ।

একটি সাধারণ সতর্কতা দর্শন তৈরি করতে আপনি নিম্নলিখিতগুলি করতে পারেন:

UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Title"
                                                                         message:@"Message"
                                                                  preferredStyle:UIAlertControllerStyleAlert];
//We add buttons to the alert controller by creating UIAlertActions:
UIAlertAction *actionOk = [UIAlertAction actionWithTitle:@"Ok"
                                                   style:UIAlertActionStyleDefault
                                                 handler:nil]; //You can use a block here to handle a press on this button
[alertController addAction:actionOk];
[self presentViewController:alertController animated:YES completion:nil];

সুইফট 3/4/5:

let alertController = UIAlertController(title: "Title", message: "Message", preferredStyle: .alert)
//We add buttons to the alert controller by creating UIAlertActions:
let actionOk = UIAlertAction(title: "OK",
    style: .default,
    handler: nil) //You can use a block here to handle a press on this button

alertController.addAction(actionOk)

self.present(alertController, animated: true, completion: nil)

দ্রষ্টব্য, এটি, যেহেতু এটি আইওএস 8 এ যুক্ত হয়েছিল, এই কোডটি আইওএস 7 এবং এর চেয়ে বেশি পুরানোতে কাজ করবে না। সুতরাং, দুঃখের বিষয়, আপাতত আমাদের এই জাতীয় সংস্করণ চেক ব্যবহার করতে হবে:

NSString *alertTitle = @"Title";
NSString *alertMessage = @"Message";
NSString *alertOkButtonText = @"Ok";

if (@available(iOS 8, *)) {
    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:alertTitle
                                                        message:alertMessage
                                                       delegate:nil
                                              cancelButtonTitle:nil
                                              otherButtonTitles:alertOkButtonText, nil];
    [alertView show];
}
else {
    UIAlertController *alertController = [UIAlertController alertControllerWithTitle:alertTitle
                                                                             message:alertMessage
                                                                      preferredStyle:UIAlertControllerStyleAlert];
    //We add buttons to the alert controller by creating UIAlertActions:
    UIAlertAction *actionOk = [UIAlertAction actionWithTitle:alertOkButtonText
                                                       style:UIAlertActionStyleDefault
                                                     handler:nil]; //You can use a block here to handle a press on this button
    [alertController addAction:actionOk];
    [self presentViewController:alertController animated:YES completion:nil];
}

সুইফট 3/4/5:

let alertTitle = "Title"
let alertMessage = "Message"
let alertOkButtonText = "Ok"

if #available(iOS 8, *) {
    let alertController = UIAlertController(title: alertTitle, message: alertMessage, preferredStyle: .alert)
    //We add buttons to the alert controller by creating UIAlertActions:
    let actionOk = UIAlertAction(title: alertOkButtonText,
        style: .default,
        handler: nil) //You can use a block here to handle a press on this button

    alertController.addAction(actionOk)
    self.present(alertController, animated: true, completion: nil)
}
else {
    let alertView = UIAlertView(title: alertTitle, message: alertMessage, delegate: nil, cancelButtonTitle: nil, otherButtonTitles: alertOkButtonText)
    alertView.show()
}

ইউপিডি: সুইফট 5-র জন্য আপডেট হয়েছে ওবজে-সি-তে প্রাপ্যতা চেক সহ পুরানো শ্রেণীর উপস্থিতি চেক প্রতিস্থাপন।


1
আপনার এমন কোড পোস্ট করা উচিত নয় যা কাজ করতে পারে তবে না করে। MyOwnUtilsClass ব্যবহার করার পরিবর্তে, কেবল কোডটি লিখুন যা আইওএস সংস্করণটি পরীক্ষা করে না।
csharpwinphonexaml 17'16

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

1
আমি এটি বলেছিলাম কারণ আমি জানি না যে প্রত্যেকে কোডের প্রতিটি টুকরো বুঝতে এবং কীভাবে এটি একটি কার্যকারী কোডের সাথে প্রতিস্থাপন করবেন তা জানার ক্ষেত্রে বিশেষজ্ঞ is
csharpwinphonexaml

10

ইউআইআইএলআর্টভিউ আইওএস ৮ এ অবমুক্ত করা হয়েছে Therefore সুতরাং, আইওএস 8 এবং তারপরের উপর একটি সতর্কতা তৈরি করতে, ইউআইএলআরলেটকন্ট্রোলার ব্যবহার করার পরামর্শ দেওয়া হচ্ছে:

UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"Title" message:@"Alert Message" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *defaultAction = [UIAlertAction actionWithTitle:@"Ok" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action){

    // Enter code here
}];
[alert addAction:defaultAction];

// Present action where needed
[self presentViewController:alert animated:YES completion:nil];

এইভাবেই আমি এটি বাস্তবায়ন করেছি।




9

পূর্ববর্তী দুটি উত্তরগুলির পরিপূরক হিসাবে (ব্যবহারকারী "সুডো আরএম-আরএফ" এবং "ইভান মুলাওস্কি"), আপনার সতর্কতা দৃশ্যে ক্লিক করার পরে আপনি যদি কিছু করতে না চান তবে আপনি কেবল বরাদ্দ রাখতে, প্রদর্শন করতে এবং প্রকাশ করতে পারেন। আপনাকে প্রতিনিধি প্রোটোকল ঘোষণা করতে হবে না।


3

এখানে একটি সম্পূর্ণ পদ্ধতি যা ইউআইএলআরটি বন্ধ করতে কেবল একটি বোতাম, একটি 'ঠিক আছে' রয়েছে:

- (void) myAlert: (NSString*)errorMessage
{
    UIAlertView *myAlert = [[UIAlertView alloc]
                          initWithTitle:errorMessage
                          message:@""
                          delegate:self
                          cancelButtonTitle:nil
                          otherButtonTitles:@"ok", nil];
    myAlert.cancelButtonIndex = -1;
    [myAlert setTag:1000];
    [myAlert show];
}


0

অ্যারের ডেটা সহ সাধারণ সতর্কতা:

NSString *name = [[YourArray objectAtIndex:indexPath.row ]valueForKey:@"Name"];

NSString *msg = [[YourArray objectAtIndex:indexPath.row ]valueForKey:@"message"];

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:name
                                                message:msg
                                               delegate:self
                                      cancelButtonTitle:@"OK"
                                      otherButtonTitles:nil];
[alert show];

-1

সুইফট 3 এর জন্য:

let alert = UIAlertController(title: "Alert", message: "Message", preferredStyle: UIAlertControllerStyle.alert)
alert.addAction(UIAlertAction(title: "OK", style: UIAlertActionStyle.default, handler: nil))
self.present(alert, animated: true, completion: nil)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.