0

使用 MonoDroid 创建 Java 绑定时,它将包含下划线的 Java 常量名称转换为 C# 驼峰式名称:

[Register ("SOME_CONSTANT_NAME")] public const int SomeConstantName = (int) 3;

我知道这是 .NET 中的“通用”命名约定,但我想保留原始名称。

是否可以控制命名转换,即。全局关闭驼峰转换?

4

1 回答 1

0

Xamarin.Android(以前称为 MonoDroid)允许您使用元数据转换控制生成的 C# 绑定的各个方面。相关文档在这里:

http://docs.xamarin.com/guides/android/advanced_topics/java_integration_overview/binding_a_java_library_%28.jar%29/api_metadata_reference/

具体来说,该EnumFields.xml文件控制基于 java int 常量生成枚举时使用的转换。例子:

<type enum-type="Some\Package\MyClassEnumType" java-class="some/package/MyClass$MyConstants">
   <member enum="CONSTANT_ONE" java="CONSTANT_ONE" value="1" />
   <member enum="CONSTANT_ZERO" java="CONSTANT_ZERO" value="0" />
</type>
于 2013-04-03T06:11:19.163 回答