فهرست مطالب:

نحوه ساخت ماشین حساب در Xcode با استفاده از Swift: 9 مرحله
نحوه ساخت ماشین حساب در Xcode با استفاده از Swift: 9 مرحله

تصویری: نحوه ساخت ماشین حساب در Xcode با استفاده از Swift: 9 مرحله

تصویری: نحوه ساخت ماشین حساب در Xcode با استفاده از Swift: 9 مرحله
تصویری: Web Development - Computer Science for Business Leaders 2016 2024, ژوئن
Anonim
Image
Image

در این آموزش سریع ، نحوه ایجاد یک ماشین حساب ساده با استفاده از Swift در Xcode را به شما نشان خواهم داد. این برنامه طوری طراحی شده است که تقریباً شبیه به برنامه ماشین حساب اصلی iOS باشد. شما می توانید دستورالعمل ها را مرحله به مرحله دنبال کنید و ماشین حساب را با من بسازید ، یا می توانید به سادگی به آخرین مرحله بروید و کد را در کنترلر نمای خود کپی و جایگذاری کنید. با این حال ، اگر این کار را انجام می دهید ، مطمئن شوید که همه عناصر خود را در استوری بورد با کنترلر نمای خود وصل کنید.

مرحله 1: ایجاد پروژه

طرح بندی Storyboard
طرح بندی Storyboard

اولین قدم در ساخت ماشین حساب ما ایجاد پروژه در Xcode است. شما می توانید این کار را با کلیک بر روی "ایجاد یک پروژه Xcode جدید" و نامگذاری آن به دلخواه انجام دهید. من اسم خود را "ماشین حساب" گذاشتم. مرحله بعدی انتخاب "Single View Application" برای نوع برنامه است. همه اطلاعات دیگر را به عنوان مقدار پیش فرض نگه دارید.

مرحله 2: طرح بندی Storyboard

مرحله 2 ایجاد ماشین حساب ما مستلزم این است که شما یک طرح بندی اولیه در استوری بورد طراحی کنید. قبل از شروع این کار ، توصیه می کنم دستگاه شبیه ساز خود را به iPhone 7 Plus تغییر دهید. با کشیدن یک دکمه روی استوری بورد و تغییر ابعاد آن به 89 89 89 شروع کنید. رنگ پس زمینه آن را به جیوه در ویژگیهای inspector و رنگ فونت آن را به تنگستن تغییر دهید. سپس ، فونت را به Helvetica Light 30 تنظیم کنید. کپی و چسباندن دکمه را تا 20 عدد ادامه دهید. طرح این دکمه ها را طوری تنظیم کنید که پنج ردیف و چهار ستون داشته باشید.

مرحله 3: طراحی داستان و زیبایی شناسی

طراحی استوری برد و زیبایی شناسی
طراحی استوری برد و زیبایی شناسی

دکمه دوم را در ردیف پایین حذف کرده و دکمه اول را گسترش دهید تا این فضا را اشغال کند. مقدار مکان یابی این دکمه را به صفر تغییر دهید. تغییر تعداد و نمادهای هر دکمه را ادامه دهید تا زمانی که عملاً با تصویر نشان داده شده در یکسان باشد. در ویژگی های بازرس ، رنگ خاکستری تیره رنگ نقره ای ، نارنجی نارنگی است و رنگ فونت روی دکمه های نارنجی به برف تغییر می کند. سپس بر روی view controller کلیک کرده و رنگ پس زمینه آن را به سیاه تغییر دهید. برچسبی را در بالای دکمه ها اضافه کنید و اندازه آن را با توجه به احساس راحتی خود تنظیم کنید. متن را به راست تراز کنید و فونت برچسب را به Helvetica light 70 تغییر دهید. در صورت تمایل ، می توانید محدودیت هایی را به همه عناصر اضافه کنید تا برنامه برای همه دستگاه ها یکسان به نظر برسد.

مرحله 4: اتصال و ادغام عناصر

اتصال و ادغام عناصر
اتصال و ادغام عناصر
اتصال و ادغام عناصر
اتصال و ادغام عناصر

بازرس ویژگیها را باز کرده و برچسب را برای هر دکمه شماره تغییر دهید. برچسب باید 1 بیشتر از مقدار عددی واقعی باشد. به عنوان مثال ، دکمه #0 باید دارای مقدار برچسب 1 ، دکمه #1 باید دارای ارزش برچسب 2 ، دکمه #2 باید دارای برچسب 3 و غیره باشد. در مرحله بعد ، کنترل را فشار دهید ، روی دکمه #0 کلیک کنید و آن را به کنترلر نمایش بکشید. یک پنجره بازشو باید روی صفحه ظاهر شود. اتصال را به "action" ، نوع را به "UIButton" ، رویداد را به "Touch Up Inside" ، آرگومان ها را به "Sender" و نام آن را به "number" تغییر دهید. می توانید نام را به هر چیزی که می خواهید تغییر دهید ، اما این بدان معناست که هنگام فراخوانی عملکرد بعداً در برنامه ، مجبور خواهید بود دوباره نام را تغییر دهید. در مرحله بعد ، هر دکمه شماره را به تابع مورد نظر خود کنترل کرده ، کلیک کرده و بکشید. اکنون ، برچسب را در برنامه کنترل کنید ، کلیک کنید و بکشید ، اما نه به تابع. این بدان معناست که شما به سادگی برچسب را به عنوان یک متغیر جداگانه وارد تابع می کنید. به یاد داشته باشید ، اگر تا به حال در مورد کد گیج شده اید ، من تمام کد خود را در اختیار شما قرار داده ام تا در آخرین مرحله این دستورالعمل استفاده کنید.

مرحله 5: ایجاد متغیرها

ایجاد متغیرها
ایجاد متغیرها

برای اینکه دکمه های شماره خود را کاربردی کنیم ، باید مقدار آنها را در تابع 'number' به برچسب متصل کنیم. می توانید این کار را با ایجاد یک متغیر 'numberOnScreen' انجام دهید و آن را از نوع دو برابر و برابر 0: var numberOnScreen: Double = 0؛ و فراموش نکنید ، اگر کد اینجا کمی نامشخص است ، در آخرین مرحله کد کامل را برای شما گذاشته ام تا به دلخواه خود استفاده کنید. سپس ، متغیر دیگری "performanceMath" از نوع bool ایجاد کرده و آن را false کنید: var performMath = false؛ همچنین ، یک متغیر دیگر به نام 'previousNumber' از نوع double ایجاد کنید و آن را برابر 0 قرار دهید: var previousNumber: Double = 0؛ آخرین متغیری که باید ایجاد کنید متغیر 'operation' است. آن را برابر 0 قرار دهید: var var = 0؛

مرحله 6: تابع دکمه های شماره

تابع دکمه های شماره
تابع دکمه های شماره

پس از ایجاد متغیرهای مناسب ، می توانید کپی و جایگذاری این کد را در تابع "number" خود ادامه دهید:

if performMath == true {

label.text = رشته (sender.tag-1)

numberOnScreen = دو برابر (label.text!)!

PerformMath = false

}

دیگری {

label.text = label.text! + رشته (فرستنده.تگ -1)

numberOnScreen = دو برابر (label.text!)!

}

در اصل ، این قطعه کد با فشار دادن دکمه مناسب اعداد خاصی را روی برچسب نشان می دهد. با این حال ، ما هنوز باید بتوانیم از همه دکمه های دیگر استفاده کرده و ماشین حساب را عملکردی کنیم. ما این کار را در چند مرحله بعدی انجام خواهیم داد.

مرحله 7: ادغام دکمه های عملیات

ادغام دکمه های عملیات
ادغام دکمه های عملیات
ادغام دکمه های عملیات
ادغام دکمه های عملیات

بازرس ویژگی ها را باز کرده و برچسب همه دکمه های متفرقه را تغییر دهید. دکمه روشن باید دارای برچسب 11 ، دکمه تقسیم باید دارای برچسب 12 ، دکمه ضرب باید دارای برچسب 13 ، دکمه تفریق باید دارای برچسب 14 ، دکمه افزودن باید دارای برچسب 15 باشد ، و دکمه مساوی باید دارای برچسب 16. باشد ، سپس کنترل را فشار دهید ، بر روی دکمه پاک کردن کلیک کرده و آن را به کنترلر نمایش بکشید. یک پنجره بازشو باید روی صفحه ظاهر شود. اتصال را به "action" ، نوع "UIButton" ، رویداد را به "Touch Up Inside" ، آرگومان ها را به "Sender" و نام آن را به "دکمه ها" تغییر دهید. شما می توانید نام را به هر چیزی که می خواهید تغییر دهید ، اما این بدان معناست که هنگام فراخوانی عملکرد بعداً در برنامه ، مجبور خواهید بود دوباره نام را تغییر دهید. در مرحله بعد ، هر دکمه متفرقه را کنترل کرده ، کلیک کرده و بکشید به تابعی که ما تازه ایجاد کرده ایم.

مرحله 8: عملکرد دکمه های متفرقه

عملکرد دکمه های متفرقه
عملکرد دکمه های متفرقه

بعد از اینکه همه دکمه های برچسب زده شده را به عملکرد مناسب خود وصل کردید ، می توانید کد را در عملکرد "دکمه ها" وارد کنید:

previousNumber = دو برابر (label.text!)!

if sender.tag == 12 {// تقسیم

label.text = "/"؛

}

if sender.tag == 13 {// ضرب

label.text = "x"؛

}

if sender.tag == 14 {// تفریق

label.text = "-"؛

}

if sender.tag == 15 {// افزودن

label.text = "+"؛

}

عملیات = فرستنده.برچسب

PerformMath = true؛

}

else if sender.tag == 16 {

if operation == 12 {// تقسیم

label.text = String (previousNumber / numberOnScreen)

}

else if operation == 13 {// ضرب

label.text = رشته (previousNumber * numberOnScreen)

}

else if operation == 14 {// تفریق

label.text = String (previousNumber - numberOnScreen)

}

else if operation == 15 {// افزودن

label.text = رشته (previousNumber + numberOnScreen)

}

}

else if sender.tag == 11 {

label.text = ""

previousNumber = 0؛

numberOnScreen = 0 ؛

عملیات = 0 ؛

}

در اصل ، این قطعه کد هنگامی که فشار داده می شود یکی از دکمه های متفرقه را نشان می دهد و به محاسبه پاسخ نهایی می پردازد و آن را روی برچسب نشان می دهد.

مرحله 9: کد کامل

کد کامل
کد کامل

اگر نمی خواهید ماشین حساب را گام به گام با من بسازید ، می توانید عناصر را به استوری بورد خود اضافه کنید و کد کامل را در کنترلر نمای خود کپی و جایگذاری کنید. این هم کد:

وارد کردن UIKit

کلاس ViewController: UIViewController {

var numberOnScreen: دو برابر = 0 ؛

var previousNumber: Double = 0؛

var performMath = false؛

عملیات var = 0؛

IBAction اعداد و ارقام (_ فرستنده: UIButton) {

if performMath == true {

label.text = رشته (sender.tag-1)

numberOnScreen = دو برابر (label.text!)!

PerformMath = false

}

دیگری {

label.text = label.text! + رشته (فرستنده.تگ -1)

numberOnScreen = دو برابر (label.text!)!

}

}

IBOutlet برچسب var ضعیف: UILabel!

IBAction دکمه های عملکردی (_ فرستنده: UIButton) {

if label.text! = "" && sender.tag! = 11 && sender.tag! = 16 {

previousNumber = دو برابر (label.text!)!

if sender.tag == 12 {// تقسیم

label.text = "/"؛

}

if sender.tag == 13 {// ضرب

label.text = "x"؛

}

if sender.tag == 14 {// تفریق

label.text = "-"؛

}

if sender.tag == 15 {// افزودن

label.text = "+"؛

}

عملیات = فرستنده.برچسب

PerformMath = true؛

}

else if sender.tag == 16 {

if operation == 12 {// تقسیم

label.text = String (previousNumber / numberOnScreen)

}

else if operation == 13 {// ضرب

label.text = رشته (previousNumber * numberOnScreen)

}

else if operation == 14 {// تفریق

label.text = String (previousNumber - numberOnScreen)

}

else if operation == 15 {// افزودن

label.text = رشته (previousNumber + numberOnScreen)

}

}

else if sender.tag == 11 {

label.text = ""

previousNumber = 0؛

numberOnScreen = 0 ؛

عملیات = 0 ؛

}

}

نادیده گرفتن func viewDidLoad () {

super.viewDidLoad ()

// پس از بارگیری نمای ، هرگونه تنظیم اضافی را انجام دهید ، معمولاً از نوک.

}

override func didReceiveMemoryWarning () {

super.didReceiveMemoryWarning ()

// هرگونه منبعی را که می توان دوباره ایجاد کرد دفع کنید.

}

}

توصیه شده: