Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 2 của 2
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Hướng dẫn sử dụng Xcode Tool để lập trình cho iPhone

    Bạn sẽ thao tác với bộ công cụ Xcode để thực hiện mọi công việc trong quá trình phát triển các ứng dụng của mình.
    Tạo new iPhone OS Project, sau đó vào Xcode>New Project một cửa sổ mới sẽ xuất hiện như hình dưới


    Bạn phải chọn Application bên dưới iPhone OS và chọn Navigation-Based Application. Bấm Choose… và bạn sẽ được yêu cầu đặt tên cho project. Gõ vào “HelloWorld” và ta cùng bắt đầu.

    Tìm hiểu về những files mặc định
    Bạn có tự hỏi những file gì mà nhiều vậy?
    Có khá nhiều file được tự động thêm vào project của bạn. Lần đầu mới nhìn, mình có cảm giác như là đang bị đe dọa. Đừng quá lo lắng, chúng ta chỉ cần chỉnh sửa một file trong số đó. Sau đây mình sẽ giải thích sơ qua về các file khác. Bạn có thể bỏ qua không cần đọc phần này, tuy nhiên lần đầu tiên khi thấy nhiều file như vậy khi lập trình iPhone, mình cảm thấy khá bối rối.
    1. CoreGraphics.framework, Foundation.framework, UIKit.framework- Chắc bạn đã đoán được, đây là môt tập hợp các library functions cung cấp sẵn bởi Apple mà chúng ta sẽ sử dụng trong các ứng dụng của mình. Chúng ta sử dụng chúng giống như việc include thư viện trong các ngôn ngữ lập trình khác.
    2. HelloWorld.app – Đây chính là ứng dụng của bạn được cài đặt vào iPhone. Ngay lúc này, chúng ta chưa thật sự cần quan tâm đến nó.
    3. Hello_World_Prefix.pch – Đây là một file được include khác, biên dịch từ nhiều file riêng biệt giúp bạn không cần phải include từng file một vào trong project. File này chứa một số đoạn mã để include dữ liệu bên trong frameworks.
    4. Hello_WorldAppDelegate.h – Đây là file header chứa tất cả các định nghĩa về biến mà ta sẽ sử dụng. Tương tự như một file header trong C hay C++.
    5. Hello_WorldAppDelegate.m – Phần cốt lõi của ứng dụng nằm ở đây. File chính là điểm bắt đầu của ứng dụng. File main.m gọi object này.
    6. Info.plist – file này chứa nhiều thông tin(meta information) khác nhau trong chương trình của bạn. Bạn sẽ không cần phải động chạm đến file này cho đến khi bạn sẵn sàng cho việc test thử chương trình trên iPhone.
    7. main.m – Giống như hầu hết các ngôn ngữ lập trình khác, file này chứa hàm main. Đây là khởi điểm của chương trình. Hàm main về cơ bản khởi tạo object và khởi động chương trình. Bạn không phải chỉnh sửa file này.
    8. MainWindow.xib – Chứa các thông tin trực quan về cửa sổ màn hình chính(main window). Nếu bạn nháy đúp lên nó, một chương trình có tên gọi “Interface Builder” sẽ được được mở ra.Chúng ta sẽ nói đến “Interface Builder” sau. Bạn cần nhớ một điều, file này không chứa bất kỳ một dòng mã nào cả.
    9. RootViewController.h, RootViewController.m – Những file này dùng cho một view controller đã được thêm sẵn vào cửa sổ màn hình chính(main window). Về cơ bản, Apple đã tạo sẵn một giao diện đơn giản ngay khi bạn bấm vào Navigation-Based Application. Vì hầu hết các ứng dụng kiểu navigation-based đều sử dụng một TableView, Apple cung cấp sẵn cho chúng ta.
    10. RootViewController.xib – Đây là một view mà Apple cung cấp sẵn dưới dạng table. Nó có các dòng và cột. Chúng ta sẽ hiển thị lời chào “HelloWorld” trên một trong số các dòng của table này.
    Tất cả các file trên tập hợp lại để tạo nên một chương trình cơ bản. Nào, bạn hãy bấm vào nút Build and Go ở phía trên của Xcode. Chú ý cái drop-down phía trên bên trái hiển thị Simulator|Debug, có nghĩa là bạn bảo Xcode rằng bạn đang test trên thiết bị giả lập iPhone(iPhone Simulator).
    Cập nhật UITableView Cells để hiển thị lời chào “HelloWorld”.
    Bây giờ chúng ta sẽ code tý chút
    Ta bắt đầu bằng việc mở file RootViewController.m. Đây là view controller mà Apple đã thêm sẵn vào cửa sổ chính của chương trình. Tất cả các hàm mà bạn thấy đã được tạo sẵn ở đây được overridden từ lớp cha TableView. Vì chúng ta đang chỉnh sửa table nên các hàm này liên quan đến thao tác chỉnh sửa table. Tìm hàm numberOfRowsInSection.

    Mã:
    -(NSInteger)tableView:(UITableView*)tableView numberOfRowsInSection:(NSInteger)section{return 0;}
    Hàm này cho ứng dụng biết table sẽ chứa bao nhiêu dòng. Hiện tại nó trả về 0. Chúng ta sẽ sửa lại thành return 1. Ta muốn ứng dụng sẽ hiển thị 1 dòng trên table. Bây giờ, kéo xuống hàm cellForRowAtIndexPath. Hàm này được gọi một lần đối với mỗi dòng. Đây là nơi ta sẽ định nghĩa những gì sẽ được hiển thị tại từng dòng. Trong trường hợp này ta muốn hiển thị lời chào “Hello World”.

    Mã:
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *MyIdentifier = @”MyIdentifier”; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier];if (cell == nil) {cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:MyIdentifier] autorelease];}// Set up the cellreturn cell;}
    Những gì mà hàm này đang làm là tạo ra một đối tượng cell và return đối tượng này. Đoạn mã trong khối if(cell==nil) kiểm tra xem chúng ta đã tạo ra một cell trước đó chưa. Nếu chưa, tạo một cell mới, còn không thì sử dụng cell đã tạo trước đó. Việc này giúp cho ứng dụng có performance tốt hơn vì ta không phải tạo ra cell mới mỗi lần chương trình gọi lại hàm này. Bạn thêm dòng code sau vào ngay trước dòng chú thích // Set up the cell:

    Mã:
    [cell setText:@”Hello World”];- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *MyIdentifier = @”MyIdentifier”; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier];if (cell == nil) {cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:MyIdentifier] autorelease];} [cell setText:@"Hello World"]; // Set up the cellreturn cell;}
    Ta gọi phương thức setText của đối tượng cell và truyền vào chuỗi “Hello World”. Bạn biết rằng trong Objective-C, chuỗi bắt đầu với ký tự “@”. Bây giờ bấm nút Build and Go để khởi động iPhone Simulator.

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    thanks bạn, bài viết hay, hiện tại đang có ít tài liệu bằng tiếng việt liên quan đên objective c và xcode trên các diễn dàn. Mình đang quan tâm tới nó, mình cũng chưa tìm hiểu được nhiều.
    Bạn có thể post thêm một bài chi tiết nữa về công cụ xCode được không, như khởi tạo App, debug hay một số công cụ chức năng có trên xCode được không.

    Thanks bạn nhiều. Bài viết hay.

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •