Merhaba Arkadaşlar,
mobilhanem.com üzerinden anlattığımız/yayınladığımız derslere iOS’ta UIActionSheet Kullanımı ile devam edeceğiz.Arkadaşlar bundan sonra iOS’ta anlatacağım dersleri Swift ve Objective C olarak iki ayrı kod olarak paylaşacağım.
ActionSheet yapısı yukarıdaki resimdede görüldüğü gibi sayfanın altından yukarı doğru açılan içinde butonları barındıran bir yapıdır.Kullanım deneyimi açısından çok faydalı bir yapıdır.
Arkadaşlar ben herzamanki gibi ufak bir uygulama ile konuyu pekiştirmek istedim. Kod üzerinde gerekli açıklamaları yapmaya çalıştım.Kaynak kodu indirip incelerseniz çok daha iyi anlayabileceğinizi düşünüyorum.Konuyu fazla uzatmadan öncelikle Objective C kodlarına geçiyorum.Sonrasında ise Swift kodlarını paylaşacağım.
[wpdm_file id=31]Objective C
ViewController.h
////// ////// #import <UIKit/UIKit.h> // 'i import etmeyi unutmayalım @interface ViewController : UIViewController - (IBAction)actionSheet:(id)sender;//ActionSheet Tıkla buton referansı
@end
Not: ‘i import etmeyi unutmayalım
ViewController.m
////// ////// #import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } - (IBAction)actionSheet:(id)sender {//Buton tıklandığında //Action Sheet Butonlarıyla birlikte oluşturuyoruz. UIActionSheet *popup = [[UIActionSheet alloc] initWithTitle:@"Action Sheet" delegate:self cancelButtonTitle:@"Vazgeç" destructiveButtonTitle:nil otherButtonTitles: @"Button 1", @"Button 2", nil]; popup.tag = 1;//Bu kısım birden fazla ActionSheet kullandığımızda lazım olacak bu uygulamada kullanılmayacak [popup showInView:[UIApplication sharedApplication].keyWindow];//ActionSheet açılması için } - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {//Action Sheet butonları tıklandığında çalışacak kısım switch (buttonIndex) { case 0: NSLog(@"Button 1 tıklandı"); break; case 1: NSLog(@"Button 2 tıklandı"); break; default: break; } } @end
Üst taraftaki kısım Objective-C de çalışan kısımdı.Şimdi aynı işlemleri Swift ile yapalım.
Swift
ViewController.swift
////// ////// import UIKit //UIActionSheetDelegate import etmeyi unutmayalım class ViewController: UIViewController,UIActionSheetDelegate { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } @IBAction func actionSheet(sender: AnyObject) {//Buton tıklanınca çalışacak method //ActionSheet'i butonlarıyla birlikte oluşturuyoruz let actionSheet = UIActionSheet(title: "Action Sheet", delegate: self, cancelButtonTitle: "İptal", destructiveButtonTitle: nil, otherButtonTitles: "Buton 1", "Buton 2") actionSheet.showInView(self.view) //actionSheet açılması için } func actionSheet(actionSheet: UIActionSheet!, clickedButtonAtIndex buttonIndex: Int) {//Butonlardan biri tıklanınca switch buttonIndex{ case 1: NSLog("Buton 1 Tıklandı"); break; case 2: NSLog("Buton 2 Tıklandı"); break; default: break; } } }
Bu dersimde anlatmak istediklerim bu kadar.Konu hakkında soru ,görüş ve önerilerinizi çekinmeden yorum bırakabilirsiniz.Birdaha ki dersimde iOS da facebook ve twitter paylaşım dersi anlatacağım.
Arkadaşlar sizlerden ricamız facebook.com/mobilhanem sayfamızı beğenmenizdir. Bir dahaki dersimde görüşmek dileğiyle kendinize iyi bakın.
[wpdm_file id=31] 0
Elinize sağlık çok faydalı bir yazı olmuş. Hem swift hem objective-c paylaşmanızda ayrı bir güzel.
Yorumunuz için teşekkür ederim bundan sonra ios derslerini her iki dilde paylaşmaya devam edeceğiz.