2013-03-29 2 views
0

При создании Java привязок с MonoDroid, он преобразует имена Java константы, содержащие символы подчеркивания в C# Имена ГорбатыйРегистр:MonoDroid Java Bindings: константы управления называющие

[Register ("SOME_CONSTANT_NAME")] общественного сопзЬ Int SomeConstantName = (межд) 3;

Я знаю, что это обычное соглашение об именах в .NET, но я хотел бы сохранить исходные имена.

Возможно ли управлять преобразованиями имен, т.е. глобально отключить трансформацию корпуса верблюда?

ответ

0

Xamarin.Android (ранее известный как MonoDroid) позволяет вам контролировать аспекты сгенерированных привязок C# с использованием преобразований метаданных. Relavent документация здесь:

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> 
+0

, но при этом вам необходимо сопоставить каждое имя. У меня есть сотни констант, и поэтому было бы неплохо, если бы вы просто могли отключить преобразование имен, т. Е. имя члена перечисления должно быть таким же, как имя константы java – fritz

Смежные вопросы