Trang Chủ Xã hội Truyền thông Cách sử dụng chú thích đối tượng trong các ứng dụng iOS

Cách sử dụng chú thích đối tượng trong các ứng dụng iOS

Video: Cách khóa ứng dụng trên iphone mỗi khi cho người khác mượn 2025

Video: Cách khóa ứng dụng trên iphone mỗi khi cho người khác mượn 2025
Anonim

Ghi chú đối tượng JavaScript (JSON) đã trở thành tiêu chuẩn trên thực tế về đại diện dữ liệu trong các ứng dụng iOS. Bạn có thể sử dụng JSON để truyền dữ liệu qua web và dưới dạng định dạng để lưu và truy xuất dữ liệu lâu dài. JSON là cả hai con người có thể đọc được và dễ dàng cho các máy để hiểu. Dữ liệu trong JSON có thể nằm trong một trong hai cấu trúc:

  • Một đối tượng bao gồm một cặp giá trị tên không đặt hàng. Mỗi tên-giá trị tương ứng với một thuộc tính của đối tượng. Mỗi cặp tên-giá trị có thể được lồng nhau, trong trường hợp thuộc tính đang được đại diện có tính phân cấp.

  • Một mảng được sắp xếp các giá trị. Mỗi giá trị trong mảng có thể là một vô hướng (một giá trị Boolean, chuỗi hoặc giá trị số), một đối tượng, hoặc một mảng.

Trong Tic-Tac-Toe, JSON đại diện cho trạng thái của trò chơi. Trạng thái này bao gồm:

  • Trình phát hiện tại (cầu thủ 1 hoặc cầu thủ 2) được biểu diễn dưới dạng số nguyên (0 cho Người chơi 1 và 1 cho Người chơi 2).

  • Trạng thái của trò chơi - dù đó là hoạt động hay hoàn thiện; nếu nó đã hoàn thành, cho dù đó là chiến thắng hay rút thăm; và nếu thắng, bởi ai.

    Các trạng thái cũng được biểu diễn như các số nguyên, với Không hoạt động là -1, Hoạt động là 0, Won là 1, và Vẽ là 2.

  • Trạng thái của lưới - nghĩa là, những ký hiệu có mặt trong mỗi ô vuông trên lưới điện. Lưu ý rằng các ký hiệu được biểu diễn dưới dạng các giá trị số nguyên 0, 1 và 2, tương ứng với các giá trị Blank, X và O.

  • Biểu tượng hiện tại (biểu tượng sẽ được chơi khi di chuyển tiếp theo). Ở đây (và để thay đổi ví dụ), chúng tôi đại diện cho biểu tượng là chuỗi "X" hoặc chuỗi "O" hoặc một khoảng trống ("").

  • Số lần chơi (số lần di chuyển được thực hiện đến thời điểm hiện tại trong trò chơi) được thể hiện dưới dạng số nguyên.

Trong mã này, chúng tôi hiển thị đối tượng JSON tương ứng với trò chơi Tic-Tac-Toe hoạt động:

{"TTTGameKeyCurrentPlayer": 0, "TTTGameKeyState": 0, "TTTGameKeyGridState": "2, 1, 2, TTTGameKeyCurrentSymbol ":" X "," TTTGameKeyPlaycount ": 8}

JSON dễ dàng ánh xạ tới các cấu trúc dữ liệu sẵn có (chẳng hạn như mảng, cấu trúc và đối tượng) trong khá nhiều ngôn ngữ lập trình. Hình thức đối tượng của JSON dễ dàng ánh xạ tới các đối tượng hoặc cấu trúc ngôn ngữ lập trình, trong khi dạng mảng của JSON có thể ánh xạ tới một mảng, vectơ, danh sách hoặc chuỗi, về cơ bản bất cứ cấu trúc dữ liệu nào có thể chứa một tập các đối tượng được yêu cầu.

Trong Tic-Tac-Toe, đối tượng JSON tương ứng với trạng thái của trò chơi được ánh xạ tới một NSDictionary, bởi vì một đối tượng NSDictionary cũng bao gồm các cặp giá trị tên lồng nhau.Kết quả là, khi bạn phải lưu trạng thái của trò chơi, bạn sẽ có trạng thái như một đối tượng NSDictionary và sau đó chuyển nó thành một chuỗi JSON.

Khi bạn lấy trạng thái của trò chơi, bạn làm ngược lại - bạn đọc dữ liệu JSON và chuyển đổi nó sang một đối tượng NSDictionary và sau đó sử dụng NSDictionary để khôi phục trò chơi đến trạng thái lưu lại.

Ví dụ sau cho biết chuyển đổi này từ một đối tượng từ điển sang JSON và từ đối tượng dữ liệu JSON sang một chuỗi (từ phương thức saveGame trong bộ điều khiển Game Session - các tập tin TTTGameSessionViewController.m và.h):

- (IBAction) saveGame: (id) sender {NSDictionary * savedGameDictionary = [activeGame toDictionary]; Lỗi NSError *; NSData * jsonData = [NSJSONSerialization dataWithJSONObject: savedGameDictionary options: NSJSONWritingPrettySản xuất lỗi: & lỗi]; NSString * savedGameString = [[NSString alloc] initWithData: mã hóa jsonData: NSUTF8StringEncoding]; NSString * savedGamesFilePath = [NSHomeDirectory () chuỗiByAppendingPathComponent: @TTTGAMESESSIONSAVEDFILEPATH]; [savedGameString writeToFile: savedGamesFilePath atomically: YES encoding: NSUTF8StringEncoding error: NULL];}

Phương pháp quan trọng ở đây là trong phương thức dataWithJSONObject từ lớp NSJSONSerialization.

Bạn có thể thấy thao tác ngược lại (có nghĩa là, từ một chuỗi JSON đến NSDictionary) trong phương thức restoreGame trong cùng trình điều khiển chế độ xem:

- (IBAction) restoreGame: (id) sender {NSLog (@ "Khôi phục trò chơi "); … NSError * restoreError = nil; NSMutableDictionary * savedDictionary = [NSJSONSerialization JSONObjectWithData: [savedGameString dataUsingEncoding: NSUTF8StringEncoding] tùy chọn: NSJSONReadingMutableContainers lỗi: & restoreError]; activeGame = [[TTTGame alloc] initFromDictionary: savedDictionary]; TTTGameGrid * gameGrid = [activeGame getGameGrid]; nếu (! [activeGame isActive]) [boardView disableInput]; [boardView setGrid: gameGrid]; [gameView redraw];}

Ở đây, phương pháp chủ chốt là JSONObjectWithData, nó thực hiện thao tác ngược lại của việc tạo ra ObjectD-C NSDictionary từ dữ liệu JSON.

Cách sử dụng chú thích đối tượng trong các ứng dụng iOS

Lựa chọn của người biên tập

Bạn nên biết gì về ngày chia cổ tức cho kỳ thi loại 7 - núm vú

Bạn nên biết gì về ngày chia cổ tức cho kỳ thi loại 7 - núm vú

Khi khách hàng đang mua chứng khoán của một công ty đang trong quá trình tuyên bố hoặc trả cổ tức, bạn cần phải có khả năng nói cho khách hàng biết họ có quyền nhận cổ tức hay không. Do giao dịch chứng khoán giải quyết trong ba ngày làm việc, khách hàng được hưởng cổ tức nếu mua chứng khoán tại <

Giải toán Các vấn đề về Từ Toán trên ACT - núm vú

Giải toán Các vấn đề về Từ Toán trên ACT - núm vú

Một vấn đề về chữ (còn gọi là vấn đề về câu chuyện vấn đề trong một thiết lập) cung cấp cho bạn thông tin bằng các từ chứ không chỉ trong phương trình và số. Để trả lời một vấn đề từ toán học trên ACT, bạn phải dịch các thông tin được cung cấp thành một hoặc nhiều phương trình và sau đó giải quyết. Bạn có thể giải quyết một số từ ...

Giải quyết sự tương đồng Tough MAT bằng cách xem xét các phần của bài phát biểu - những núm vú

Giải quyết sự tương đồng Tough MAT bằng cách xem xét các phần của bài phát biểu - những núm vú

Giải thích sự tương tự trên Miller Analogies Test (MAT) là khó khăn, nhưng nếu bạn có một kế hoạch, nó có thể giúp đỡ. Một phương pháp tấn công một phép so sánh phức tạp của MAT là kiểm tra các phần của bài phát biểu cho mỗi thuật ngữ. Bằng cách hiểu biết các phần của bài phát biểu liên quan, bạn có thể làm sáng tỏ một sự tương tự gây nhầm lẫn. ...

Lựa chọn của người biên tập

Thiết kế một Ảnh Cắt dán cho Blog của bạn với PicMonkey - những hình núm vú

Thiết kế một Ảnh Cắt dán cho Blog của bạn với PicMonkey - những hình núm vú

Trên blog, ảnh cắt dán cho phép bạn trình bày nhiều hình ảnh hơn trong một không gian nhỏ hơn so với khi bạn chèn những bức ảnh này vào bài đăng trên blog. Ảnh ghép ảnh cũng có thể làm cho nhìn vào nhiều hình ảnh hấp dẫn hơn, cho dù đó là trong bài viết blog của bạn hoặc ở nơi nào khác trong thiết kế blog của bạn.

Thiết kế một Trang Quảng cáo hiệu quả cho Blog của bạn - những con cần

Thiết kế một Trang Quảng cáo hiệu quả cho Blog của bạn - những con cần

Nếu bạn muốn kiếm tiền từ blog của bạn thông qua quảng cáo hoặc làm việc với các công ty, sau đó có một trang quảng cáo như một phần của thiết kế blog của bạn là phải. Nếu blog của bạn không có trang Quảng cáo, đại diện công ty sẽ không biết bạn có tiềm năng quan tâm đến việc làm việc với họ trong các dự án chung. Tất nhiên, ...

Thiết kế Blog của bạn Yourself - núm vú

Thiết kế Blog của bạn Yourself - núm vú

Nếu bạn có một niềm đam mê để học những điều mới và không nhớ thử nghiệm, hãy thử tự thiết kế blog của bạn. Tất nhiên, lập luận của bạn có thể ít mạo hiểm hơn - nói rằng, bạn có thể không có tiền để thanh toán cho ai đó để thiết kế blog của bạn. Bất kể lý do, việc thiết kế blog của riêng bạn có thể được khen thưởng! ...

Lựa chọn của người biên tập

Làm thế nào để Căn chỉnh Excel 2010 dữ liệu theo chiều ngang và chiều dọc - núm vú

Làm thế nào để Căn chỉnh Excel 2010 dữ liệu theo chiều ngang và chiều dọc - núm vú

Trong Excel 2010, bạn có thể thay đổi sắp xếp ngang và dọc của dữ liệu ô. Theo mặc định, văn bản được căn lề trái, và giá trị và ngày được canh phải. Sử dụng các nút trong nhóm Alignment của tab Trang chủ để thay đổi sắp xếp. Các giá trị được định dạng dưới dạng Kế toán chỉ có thể hiển thị là liên kết phải. Bạn có thể thay đổi sắp xếp tất cả ...

Làm thế nào để Căn chỉnh nhiều đối tượng đồ họa trong Excel 2010 - núm vú

Làm thế nào để Căn chỉnh nhiều đối tượng đồ họa trong Excel 2010 - núm vú

Khi bạn làm việc với nhiều đối tượng hoặc hình dạng trong Excel 2010, bạn có thể cần căn chỉnh các đối tượng theo những cách nhất định để cải thiện sự xuất hiện của họ trong bảng tính. Excel cung cấp một số tuỳ chọn căn chỉnh thông qua menu Align trên tab Định dạng Công cụ Vẽ. Thực hiện theo các bước sau để căn chỉnh các đối tượng đồ họa trong một bảng tính: Chọn <...

Cách áp dụng một kiểu bảng cho một bảng Excel 2010 - núm vú

Cách áp dụng một kiểu bảng cho một bảng Excel 2010 - núm vú

Trong Excel 2010, bạn có thể áp dụng một định dạng bảng được xác định trước cho một phạm vi ô. Tính năng Định dạng Bảng làm hiển thị một bộ sưu tập Thư viện mở rộng với định dạng hình thu nhỏ được chia thành ba phần - Ánh sáng, Trung bình và Đậm - mỗi màu đều mô tả cường độ màu được sử dụng theo các định dạng khác nhau.