TÌM HIỂU VỀ LABEL, BUTTON, TEXTFIELD, SLIDER,STEPPER TRONG IOS Hôm nay mình sẽ giới thiêu cho các bạn về UI cơ bản của lập trình di động IOS.. Label, Button, TextField, Slider, Switch,
Trang 1TÌM HIỂU VỀ LABEL, BUTTON, TEXTFIELD,
SLIDER,STEPPER TRONG IOS
Hôm nay mình sẽ giới thiêu cho các bạn về UI cơ bản của lập trình di động IOS Label, Button, TextField, Slider, Switch, Page Control cách khai báo, cách sử dụng, ứng dụng thực tế của các UI trong App
Sau đây mình sẽ giới thiệu cho các bạn từng UI cụ thể!
o Ta cần tạo dự án mới, đặt
tên:
1 Đầu tiên mình sẽ giới thiệu về Label, Button, TextField trong IOS
label là gì? label là nhãn chứa thông tin về text, trang trí text, thường dùng để thông báo thông tin, trang trí màn hình
Trang 2button là gì? button là một nút, sau khi nhấn vào nút đó sẽ thực một số công việc gì đó,
đoạn code nào đó
TextField là gì? là một ô nhập liệu cho phép nhập dữ liệu từ bạn phím vào ô đó, và cho
phép lấy dữ liệu từ ô để thực hiện các tác vụ khác
Để cho các bạn dễ hình dung mình sẽ lấy một ví dụ cụ thể sau:
Mình tạo ra 2 ô nhập liệu(TextField) , nhập dữ liệu từ bàn phím, một nút(button) để thực
hiện cộng 2 số nhập từ bàn phím, một label hiển thị kết quả tổng của 2 số
Thiết kế giao diện đơn giản như sau label đổi text=0, button đổi text=0, và 2 ô
text Field
Ánh xạ UI sang class quản lý: tạo file ViewController.h, Giữ CTRL và kéo lần
lượt label, textField để kiểu Outlet chỉ thuộc tính label và textField và đặt tên:
Trang 3Riêng button Cộng ta để kiểu action:
Sau khi ánh xạ và đặt tên ta sẽ được như trông như sau:
1 @interface ViewController : UIViewController
2 @property (weak, nonatomic) IBOutlet UILabel *labelResult;
3 - (IBAction)buttonCong:(id)sender;
4 @end
Ta thực thi bên file ViewController.m
Ta thêm đoạn mã sau trong buttonCong:
1 - (IBAction)buttonCong:(id)sender {
2 int soA;
3 int soB;
4 int tong;
5 soA=[self.textfieldSoA.text intValue];
6 soB=[self textFieldSoB.text intValue];
7 tong =soA+soB;
8 NSString *kq=[[NSString alloc]initWithFormat:@"%d",tong];
9 self.labelResult.text=kq;
10 }
Khai báo 3 biến, soA, soB, tong
soA=[self.textfieldSoA.text intValue]; lấy dữ liệu từ ô nhập thứ nhất chuyến đổi kiểu sang intValue, số mới có khả năng tính toán Tương tự với soB
Lưu ý: Trong ios nếu kiểu dữ liệu nhập vào ô textField là không thể chuyển sang kiểu số thì gán =0 giá trị mặc định khi không thể chuyển đổi được
tong=soA+soB; gán tổng bằng tổng 2 số vừa lấy ra Định dạng lại kết quả kiểu NSString, kiểu text mới có thể đưa dữ liệu lên label, đưa dữ liệu lên label
Trang 42 Tiếp theo mình giới thiệu cho các bạn về Slider:
Slider là gì? là môt thanh có con trỏ cho phép tuỳ chỉnh một miền dữ liệu trên thanh Thường ứng dụng như tinh chỉnh ánh sáng, màu sắc, độ trong suốt…
ví dụ: Ta có một thanh slider và một label trả về miền giá trị, khi ta kéo con trỏ trên thanh slider:
Ta thiết kế trên ViewControler ví dụ trước :
ta thêm slider và cho con trỏ vào chính giữa
Ta thêm label và đổi text thành 0.500000, đơn giản bởi ta cho con trỏ ở chính giữa,
miền ta cho chạy
Trang 5
ánh xạ tương tự như ví dụ trên và đặt tên ta cần thuộc tính để lấy data từ con trỏ và action để cho phép lấy dữ liệu khi di chuyển con trỏ
1 - (IBAction)sliderbarChange:(id)sender;
2 @property (weak, nonatomic) IBOutlet UILabel *labelSliderBar;
thêm đoạn mã thực thi sau:
Trang 61 - (IBAction)sliderbarChange:(id)sender {
2 UISlider *slider=(UISlider*) sender;
3 self.labelSliderBar.text=[[NSString alloc]initWithFormat:@"%f",slider.value];
4 }
khi ta di con trỏ giá trị con trỏ lưu trong value, sẽ hiện thị trên label Sliderbar
Tuỳ từng ứng dụng mà ta lấy miền giá trị truyền vào!
3, Stepper:
stepper là gì? stepper bao gồm 2 nút + và – là một thanh dữ liệu min max, thanh này sẽ nhảy bậc theo bậc ta quy định khác slider ở chỗ slider miền liên tục, stepper tăng giảm rời rạc, ứng dụng như tăng giảm âm thanh…
ví dụ:
Ta có một Stepper, và label hiển thị kết quả khi tăng giảm
Trang 7Ánh xạ Stepper: thuộc tính để lấy giá trị stepper, action để mỗi lần thay đổi ta lấy được giá trị thay đổi
1 @property (weak, nonatomic) IBOutlet UIStepper *stepper;
2 - (IBAction)step:(id)sender;
ánh xạ label gán giá trị =0 để hiển thị kết quả stepper :
Trang 81 @property (weak, nonatomic) IBOutlet UILabel *labelSliderBar;
Thực thi thêm đoạn mã sau:
1 - (void)viewDidLoad {
3 self.stepper.stepValue= 2 ;
4 self.stepper.minimumValue=- 2 ;
5 self.stepper.maximumValue= 51 ;
bước nhảy mỗi lần nhấn vào + or - giá trị min=-2, max= 51;
1 - (IBAction)step:(id)sender {
2 double number=[self.stepper value];
3 self.labelStepper.text=[[NSString alloc]initWithFormat:@"%f",number ];
4
5 }
[ self.stepper value] lấy ra giá trị của stepper hiện tại
=> sau đó đưa lên label
như vậy mình đã hướng dẫn cơ bản một số UI cơ bản! link full code:
1 http ://www.mediafire.com/download/t7d2d54u6xnivhc/UICoBan.zip