gpt4 book ai didi

java - 我正在尝试掌握如何将界面从 android 转换为 Objective-C

转载 作者:行者123 更新时间:2023-11-29 03:38:51 24 4
gpt4 key购买 nike

所以我最近开始学习 Objective-C,并且在工作中我们一直在开发一个 android 应用程序,我们稍后也会在 IOS 上发布,所以我试图了解如何重新- 将一些代码写入 Objective-C 让我们以此为例:

import java.io.Serializable;

/*
* Serializable is needed for sending in Android intents.
*/
public interface IMessage extends Serializable {
enum MessageID {
// Nothing to send or reply
NONE,
// Client polls server
POLL,
POLL_OK,
// Client internal, indicates network problems
NONETWORK,
// Indicates programming errors
INVALIDMESSAGE,
INVALIDSTATE,
UNKNOWNMESSAGE,
// Application setup messages
LOGIN,
LOGIN_OK,
LOGIN_ACCOUNT_DOES_NOT_EXIST,
LOGOUT,
LOGOUT_OK,
REGISTER,
REGISTER_OK,
REGISTER_NICKNAME_ALREADY_EXISTS,
UPDATEACCOUNT,
UPDATEACCOUNT_OK,
UPDATEACCOUNT_NICKNAME_ALREADY_EXISTS,
// Game setup messages
QUERYGAMESTATUS,
QUERYGAMESTATUS_IDLE,
QUERYGAMESTATUS_PENDING,
QUERYGAMESTATUS_PLAYING,
REQUESTGAME,
REQUESTGAME_OK,
REQUESTGAME_ALREADY_IN_GAME,
REQUESTGAME_DUPLICATE_REQUEST,
ENTERGAME,
ENTERGAME_OK,
ENTERGAME_ERROR,
// Game playing messages
// ...
};

MessageID getID();
String encodeAttributes();
void decodeAttributes(String data);
}

所以我想知道您是否必须始终将 .m 文件与 .h 文件一起使用,因为我猜在 Obejctive-C 中可能是这样的:

@interface IMessage : NSObject
typedef enum {

//all the same

} MessageID;

NSString *encodeAttributes();
-(void) decodeAttributes(NSString data);

还是我必须将它分成两个文件?因为我猜你必须同时拥有 .m/.h 文件?

最佳答案

Protocols Objective-C 等价于 Java 接口(interface)。

并且不要使用 IMessage,匈牙利表示法在 C# 中使用,但在 Objective-C 或 Java 中不使用。

关于java - 我正在尝试掌握如何将界面从 android 转换为 Objective-C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18760841/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com