تاریخ امروز :
iOS
macOS
Xcode
iTunes
نمایش نتایج: از 1 به 2 از 2

موضوع: دوره آموزش swift - درس ۱۸: آشنایی با CoreData - پارت ۱

  1. #1
    تاریخ عضویت
    Dec 2008
    محل سکونت
    Germany
    نوشته ها
    11,541
    ورژن iOS
    10.3
    ورژن Mac
    10.12.4
    سپاس
    14,686
    از این کاربر 83,024 بار در 14,014 ارسال سپاس شده است.

    پیش فرض دوره آموزش swift - درس ۱۸: آشنایی با CoreData - پارت ۱

    با سلام و عرض ادب
    در این بخش به یادگیری بخش مربوط به دیتابیس Xcode می پردازیم که Core Data نام دارد. در این آموزش با یادگیری ساخت یک اپلیکیشن ساده با مبحث Core Data بیشتر آشنا خواهیم شد.
    برای شروع کار Xcode را باز کرده و اپلیکیشنی بر مبنای Single view با نام List (یا هرچه که بخواهید) ایجاد می کنیم. به این نکته دقت کنید که در محیط انتخاب اسم, تیک Use core data را زده باشید. با فعال سازی تیک Core data به xcode اجازه تولید کد هایی که نام core data stack شناخته می شود را می دهید. Core data stack شامل محموعه ای از عناصر است که به کاربر جهت ذخیره و بازیابی اطلاعات از Core data کمک می کند.

    ایده اپلیکیشن این آموزش بسیار ساده است, در این اپلیکیشن جدولی از اسم ها وجود خواهد داشت که در نهایت core data اجازه ذخیره هر اسم در مقاطع مختلف را خواهد داد.

    نخست view controller را انتخاب کرده و از منوی Editor/ Embed in/ Navigator controller را انتخاب کنید.



    در صفحه جدید باز شده, یک Table view از object library دراگ کرده و آنرا در سراسر باز کنید و سپس با چهار طرف این جدول را فیکس کنید. سپس یک bar button item انتخاب کنید و در گوشه سمت راست table view اضافه کرده. این این کلید را Add می گذاریم.



    در اینجا می بایست صفحه جدید view contoller را که هم اکنون به table view اختصاص دارد, صفحه ای برای منابع اطلاعاتمان قرار دهیم. برای اینکار کلید کنترل را نگه می داریم و table view را به آیکون زرد بالای view controller درگ می کنیم و گزینه Data source را انتخاب می کنیم.


    سپس در ادامه table view را به صورت outlet در بخش کد ها معرفی می کنیم

    کد:
    @IBOutlet weak var tableView: UITableView!
    و سپس کلید add

    کد:
    @IBAction func AddName(_ sender: AnyObject) {
        }
    در ادامه در یک متغیر اسم ها را از نوع String و در یک آرایه معرفی می کنیم

    کد:
    var names = [String]()

    سپس در قسمت viewDidLoad کد های زیر را اضافه کنید.

    کد:
     
    override func viewDidLoad() { super.viewDidLoad() title = "\"The List\"" tableView.register(UITableViewCell.self, forCellReuseIdentifier: "Cell") }
    نکته: در سوئیفت 2 به جای register می بایست از registerClass استفاده کنید


    این کد ها به کاربران اجازه می دهد که یک عنوان و یک ردیف را را برای داده های وارد شده ثبت کنند. در ادامه می بایست UITableViewDataSource را به اسم کلاس در viewContoller.swift اضافه کنید.

    کد:
    class ViewController: UIViewController, UITableViewDataSource {
    با اضافه کردن UITableViewDataSource اروری در Xcode مشاهده خواهد شد که اعلام می کند که viewcontroller پروتوکل های مربوط به UITableViewDataSource jت تایید نمی کند. برای رفع این ارور کد های زیر را به مجموعه اضافه می کنیم. اضافه کردن این کد ها در سوئیف ۳ اجباری شده است.

    کد:
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return names.count } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "Cell") cell!.textLabel!.text = names[indexPath.row] return cell! }

    نکته: در سوئیفت 2 به جای dequeueReusableCell می بایست از dequeueReusableCellWithIdentifier استفاده کنید

    اگر تاکنون با UiTableView کار کرده اید این کد ها برایتان آشنا به نظر می آید. در این بخش اعلام کرده ایم که Table view باید به تعداد اسم های وارده ردیف داشته باشد

    در نهایت در بخش Action کلید Add کد های زیر را اضافه می کنیم

    کد:
      let alert = UIAlertController(title: "New Name",
                                          message: "Add a new name",
                                          preferredStyle: .alert)
            let saveAction = UIAlertAction(title: "Save",
                                           style: .default,
                                           handler: { (action:UIAlertAction) -> Void in
                                            let textField = alert.textFields!.first
                                            self.names.append(textField!.text!)
                                            self.tableView.reloadData()
            })
            let cancelAction = UIAlertAction(title: "Cancel",
                                             style: .default) { (action: UIAlertAction) -> Void in
            }
            alert.addTextField {
                (textField: UITextField) -> Void in
        }
            alert.addAction(saveAction)
            alert.addAction(cancelAction)
            present(alert,
                                  animated: true,
                                  completion: nil)

    کد های فوق در سويفت ۳ قابل اجرا هستند. اگر از سوئیفت ۲ استفاده می کنید

    alert را به Alert
    default را به Default
    addTextField را به addTextFieldWithConfigurationHandler
    present را به presentViewController
    تفییر دهید

    بعد از اجرای برنامه می توانید لیست از نام ها را ایجاد کنید. در پارت آینده این آموزش, کمی به عمق بیشتر Core data خواهیم رفت.


    i-phone.ir
    The Best or Nothing



    Twitter : Rouzbeh7000

  2. 4 کاربر زیر از roozbeh7000 عزیز به خاطر این پست مفید سپاس کرده اند .


  3. #2
    تاریخ عضویت
    Mar 2009
    نوشته ها
    38
    سپاس
    76
    از این کاربر 36 بار در 21 ارسال سپاس شده است.

    پیش فرض

    roozbeh7000 عزیز به خاطر این پست مفید سپاس

  4. کاربر زیر از ali.itsat عزیز به خاطر این پست مفید سپاس کرده است:


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. دوره آموزش swift - درس ۸: آشنایی با stack view
    توسط roozbeh7000 در انجمن آموزش ها
    پاسخ: 0
    آخرين نوشته: 13-05-2016, 03:12 AM
  2. دوره آموزش swift - درس ۲ : آشنایی مختصری با App layout
    توسط roozbeh7000 در انجمن آموزش ها
    پاسخ: 2
    آخرين نوشته: 29-04-2016, 07:11 PM
  3. دوره آموزش swift - درس ۴: آشنایی با function و conditions
    توسط roozbeh7000 در انجمن آموزش ها
    پاسخ: 0
    آخرين نوشته: 14-04-2016, 03:34 AM
  4. نسخه نهایی Xcode 7 با پشتیبانی از swift 2 و watch os 2 منتشر شد
    توسط roozbeh7000 در انجمن نسخه های فاینال SDK
    پاسخ: 7
    آخرين نوشته: 21-01-2016, 02:46 PM
  5. مشکل binding و coredata
    توسط alisanie در انجمن سؤالات و مشکلات پیرامون برنامه نویسی
    پاسخ: 6
    آخرين نوشته: 12-01-2013, 11:36 PM

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  
اطلاعات سایت
لینک دوستان
درباره سایت
انجمن تخصصی آيفون در سال ۲۰۰۷ با عرضه‌ی اولين نسل گجت‌های iOS اپل فعاليت خود را آغاز نمود. مفتخر هستيم که تا اين لحظه پيشتاز خدمت رسانی به کاربران ايرانی محصولات اپل باشيم.

اکنون ساعت 08:41 PM برپایه ساعت جهانی (GMT - گرینویچ) +4.5 می باشد.

Powered by vBulletin® Version 4.2.3
Copyright © 2019 vBulletin Solutions, Inc. All rights reserved.