MonoDroid Java Bindings:控制常量命名

时间:2013-03-29 09:08:09

标签: java binding xamarin.android

使用MonoDroid创建Java Binding时,它会将包含下划线的Java常量名称转换为C#c​​amel case name:

[注册(“SOME_CONSTANT_NAME”)] public const int SomeConstantName =(int)3;

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

是否可以控制命名转换,即。全球关闭驼峰案例转型?

1 个答案:

答案 0 :(得分: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>