• Downloading from our site will require you to have a paid membership. Upgrade to a Premium Membership from 10$ a month today!

    Dont forget read our Rules! Also anyone caught Sharing this content will be banned. By using this site you are agreeing to our rules so read them. Saying I did not know is simply not an excuse! You have been warned.

Project ứng dụng bấm giờ

Khi vào Github, mình bất ngờ thấy một project khá hay, đó là project app bấm giờ: Stopwatch

Project-ung-dung-bam-gio.png


Stopwatch ứng dụng navigation controller, UILabel, UIButton và UITableView và chủ yếu layout bằng cách kéo thả giao diện.

Xem thêm: viết phần mềm

Trong bài viết này, mình sẽ giúp bạn làm project

Xem thêm: ngôn ngữ lập trình web

B1: Chạy Xcode, khởi tạo 1 project mới, ở đây mình đặt tên cho nó là "Stopwatch"

Sau đó tạo thêm 1 file swift có sẵn import Foundation đặt tên cho nó là Stopwatch.swift


Xem thêm: lập trình website

B2: bắt đâu tạo

- Mở file Main.storyboard, đây là nơi để hiển thị giao diện

+ Đầu tiên hãy tạo ra 1 NavigationController kế thừa từ ViewController cho trước

click vào hình tròn màu vàng ở trên ViewController -> Editor -> Embed in -> NavigationController

+ Tất cả những đối tượng chúng ta cần dùng đến là: UILabel, UIButton, UITableView

- Bắt đầu thêm các đối tượng vào ViewController:

+ Thêm 2 UILabel đặt tên là: timerLabel vào lapTimerLabel

+ Thêm 2 UIButton: playPauseButton và lapRestButton

+ Thêm 1 UITableView: lapsTableView

- Sau khi thêm đủ các đối tượng, tiến hành ánh xạ các đối tượng vào file ViewController rồi đặt tên cho chúng

- Ở bên file Stopwatch.swift:

import Foundation

class Stopwatch: NSObject {

var counter: Double

var timer: Timer

override init() {

counter = 0.0

timer = Timer()

}

}

counter với timer, là 2 thuộc tính mình tạo ra cho đối tượng Stopwatch, Double và Timer là kiểu dữ liệu

Double là kiểu dữ liệu số (giống như Int), nhưng Int là số nguyên không có phần thập phân, Double là có phần thập phân (kiểu như số thực) với phạm vi giá trị lớn.

- Bên file ViewController:

Bên trên hàm ViewDidLoad

fileprivate let mainStopwatch: Stopwatch = Stopwatch()

fileprivate let lapStopwatch: Stopwatch = Stopwatch()

fileprivate var isPlay: Bool = false

fileprivate var laps: [String] = []

Ở đây chúng ta thấy kiểu khai báo là "fileprivate let", tức là đối tượng được khai báo sẽ được ẩn đi để các đối tượng khác bên ngoài thực thể mình khai báo không gọi được, còn bên trong thực thể đó sử dụng bình thường.

- Bây giờ hãy vào trong hàm ViewDidLoad:

let initCircleButton: (UIButton) -> Void = { button in

button.layer.cornerRadius = 0.5 * button.bounds.size.width

button.backgroundColor = UIColor.white

}

Những dòng code này giúp chúng ta làm bo góc các button và đặt màu nền là màu trắng

override var shouldAutorotate : Bool {

return false

}

đoạn code này là khai báo một biếm souldAutoroate trả về giá trị Bool, Bool là kiểu dữ liệu boolean, chỉ gồm 2 giá trị true/false (đúng/sai)
 

Facebook Comments

Similar threads
Thread starter Title Forum Replies Date
Admin Hướng dẫn sửa lỗi Visual Studio needs to make non-functional changes to this project C# / C++ 0
P Hướng dẫn Hướng dẫn phá mật khẩu VBA project trong Excel bằng công cụ OllyDBG Tut, tool, mmo 0
Admin vBulletin Project Tools Open Source 2.2.1 Add-ons 0
Admin Share template project 10 cho blogger Blogger 0
Admin Google nói về Project Svelte, dự án giúp Android 4.4 KitKat chạy được trên thiết bị tầm thấp Tin tức CNTT 0
S Loạt ảnh khó tin chụp bằng kính Google Project Glass Mạng internet 0
S Google: 'Kính Project Glass không tuyệt như quảng cáo' Mạng internet 0
S Bức ảnh chụp từ 'cặp kính thần' Project Glass của Google Mạng internet 0
katy Android Đăng ký ứng dụng MyPoint, nhận 'bão' quà tặng dịp Tết Điện thoại di động 31
F 10 Lý Do Các Nhà Phát Hành Game – Ứng Dụng – Nội Dung Nên Sử Dụng Gói Directlink của Fshare Tin tức CNTT 0
katy Android Ưu đãi mới, tới tấp về trên ứng dụng My Point Điện thoại di động 20
vinhdlp Hướng dẫn Hướng dẫn cách ứng tiền mạng Viettel đơn giản cho thuê bao Mạng internet 0
katy Android MobiFone khuyến mãi 50% nạp tiền qua ứng dụng MyPoint ngày 31/10 Điện thoại di động 0
katy Android MobiFone khuyến mãi 50% nạp tiền qua ứng dụng MyPoint Điện thoại di động 0
katy Android MobiFone khuyến mãi 50% qua ứng dụng My Point ngày 30/06/2022 Điện thoại di động 0
katy Android MobiFone khuyến mãi 50% nạp tiền qua ứng dụng MyPoint Điện thoại di động 0
katy Android MobiFone khuyến mãi 50% nạp tiền trên ứng dụng MobiFone NEXT Thông tin các mạng di động 17
katy Android Khuyến mãi 50% nạp tiền trên ứng dụng MobiFone NEXT ngày 02/02/2022 Thông tin các mạng di động 10
tunglamed Tải và chia sẻ ứng dụng My MobiFone: Rinh ngàn quà tặng Điện thoại di động 2
Thichquangboom Hoàn tiền 5.000đ khi thanh toán FCODE qua ví MOCA trên ứng dụng GRAB Tin tức CNTT 0
tunglamed Truy cập ngay - nhận quà hay trên ứng dụng MobiFone NEXT Điện thoại di động 10
tunglamed Mua vé số Vietlott dễ dàng thông qua ứng dụng Vietlott SMS MobiFone Điện thoại di động 7
tunglamed MobiFone tặng miễn phí gói dịch vụ trị giá 600.000 khi tải và sử dụng ứng dụng Vhandicap Điện thoại di động 5
tunglamed MSCHOOL - Ứng dụng học tập từ xa không lo Covid Điện thoại di động 0
tunglamed MobiFone Safe Kids - Ứng dụng giám sát trẻ em Điện thoại di động 3
tunglamed Hoàn tiền đến 100.000đ khi đăng ký Dịch vụ, gói cước trên ứng dụng My MobiFone Điện thoại di động 0
tunglamed MobiFone tặng 5GB miễn phí cho thuê bao cài đặt mới ứng dụng Bluezone Điện thoại di động 0
tunglamed MobiFone cung cấp gói cước G80 trên ứng dụng Mobifone Go với nhiều ưu đãi Điện thoại di động 0
Admin Hướng dẫn đổi tên ứng dụng android hiển thị trên màn hình xamarin forms - Change app name on main screen Android, iOS 0
Admin Hướng dẫn tạo nút thoát ứng dụng trong Xamarin Forms Android, iOS 0
Admin Hướng dẫn viết ứng dụng máy tính bỏ túi đơn giản bằng C# C# / C++ 4
Admin Hướng dẫn tạo hiệu ứng chữ chạy, ảnh chạy với thẻ Marquee trong HTML5 Mã nguồn wap 0
LIA THUÊ VIẾT APP ỨNG DỤNG TẠO DÀN XỔ SỐ Kiến thức lập trình 0
T 5 ông chủ lớn ô tô thử nghiệm trả phí ứng dụng blockchain Tin tức CNTT 0
T Xu thế ứng dụng AI trong lĩnh vực kinh doanh Tin tức CNTT 0
T Smartphone IMpulse K1 sản phẩm ứng dụng Blockchain Tin tức CNTT 0
T Blockchain ứng dụng trong phương tiện tự lái Tin tức CNTT 0
B IBM thí điểm ứng dụng Blockchain trong bảo lãnh ngân hàng Tin tức CNTT 0
T Phát triển ứng dụng mobile với Flutter Tin tức CNTT 0
N Ứng dụng My MobiFone ra mắt phiên bản mới với nhiều tính năng Thông tin các mạng di động 7
T Ngân hàng Hàn Quốc Shinhan ứng dụng blockchain cho vay chứng khoán Tin tức CNTT 0
cuongpro9x Share Hiệu ứng CSS 3D Mã nguồn web 5
T Slam Dunk trên Blockchain ứng dụng Ethereum ? Tin tức CNTT 0
T Samsung Galaxy S10 ứng dụng công nghệ blockchain Pundi X Tin tức CNTT 0
tunglamed Giới thiệu bạn bè cùng sử dụng ứng dụng MobiFone NEXT nhận ngay ưu đãi Thông tin các mạng di động 21
T The New York Times ứng dụng Blockchain chống lại fake news Tin tức CNTT 0
T VeChain giúp việc ứng dụng Blockchain nổi bật hơn Tin tức CNTT 0
T Tìm hiểu về Docker và ứng dụng của nó Tin tức CNTT 0
B Giảm 23% khi đặt phòng khách sạn qua ứng dụng mConnect của MobiFone Thông tin các mạng di động 3
T Fujitsu ứng dụng Blockchain đánh giá độ tin cậy Tin tức CNTT 0

Similar threads

New posts New threads New resources

Back
Top