Hôm nay, Thứ 3 16/06/26 10:53

Thời gian được tính theo giờ UTC + 7 Giờ




Tạo chủ đề mới Gửi bài trả lời  [ 1 bài viết ] 
Người gửi Nội dung
 Tiêu đề bài viết: Project ứng dụng bấm giờ
Gửi bàiĐã gửi: Thứ 4 18/09/19 8:54 
Ngoại tuyến

Ngày tham gia: Thứ 6 13/09/19 14:07
Bài viết: 50
Khi vào Github, mình bất ngờ thấy một project khá hay, đó là project app bấm giờ: Stopwatch

[center]Hình ảnh
[/center]

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

em 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)


Đầu trang
 Xem thông tin cá nhân  
 
Hiển thị những bài viết cách đây:  Sắp xếp theo  
Tạo chủ đề mới Gửi bài trả lời  [ 1 bài viết ] 

Thời gian được tính theo giờ UTC + 7 Giờ


Ai đang trực tuyến?

Đang xem chuyên mục này: Không có thành viên nào đang trực tuyến1 khách


Bạn không thể tạo chủ đề mới trong chuyên mục này.
Bạn không thể trả lời bài viết trong chuyên mục này.
Bạn không thể sửa những bài viết của mình trong chuyên mục này.
Bạn không thể xoá những bài viết của mình trong chuyên mục này.
Bạn không thể gửi tập tin đính kèm trong chuyên mục này.

Tìm kiếm với từ khoá:
Chuyển đến:  
Chứng nhận thanh toán bảo đảm

CÔNG TY TNHH DỊCH VỤ HÀNG HOÁ TRỰC TUYẾN

Diễn đàn sử dụng phần mềm phpBB® Forum


Chợ xây dựng Hà nội: Công ty TNHH Thương mại Dương Linh

Showroom: Số 1B, Ngõ 5, tổ 19, thị trấn Cầu Diễn, Huyện Từ Liêm, Thành phố Hà nội

Tel: 04.37737548; Fax: 04.38370082

Email Phòng kinh doanh: sale@choxaydung.vn

Chợ xây dựng Sài Gòn: Công ty TNHH SX-TM Đăng Hải

Địa chỉ: Số 140, Tô Hiến Thành, P15, Quận 10, Tp.HCM

Tel: 08.38620524; Fax: 08.38633011;

Email: saigonRep@choxaydung.vn