iOS UIActionSheet Kullanımı (Swift – ObjC)

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

Taha Kırca

iOS & Android & Apple Watch Developer, Mobilhanem.com yazarı, Karadeniz Uşağu, Ordu Sevdalısı

2 Yorum

Haftalık Bülten

Mobilhanem'de yayınlanan dersleri haftalık mail almak ister misiniz?