Is it possible to expose an indexer from a Xamarin Java bindings library?
我正在创建一个XAMARIN Java绑定库。在我的Java代码中,我的一个类看起来是这样的:
1 2 3 4 5 | public class ColoringList { public long get(int index) { ... } public void set(int index, long element) { ... } } |
我希望在C中的绑定库中公开此内容:
1 2 3 4 | public class ColoringList { public long this[int index] { get; set; } } |
是否有任何方法可以修改Xamarin的
1 2 | public long Get(int index); public void Set(int index, long element); |
?谢谢。
对于其他遇到此问题的人,解决方法是1)在
1 2 3 4 5 6 | <attr path="/api/package[@name='com.bluejay.repository']/class[@name='ColoringList']/method[@name='get']" name="visibility">internal</attr> <attr path="/api/package[@name='com.bluejay.repository']/class[@name='ColoringList']/method[@name='set']" name="visibility">internal</attr> |
然后,在名为
1 2 3 4 5 6 7 8 | public partial class YourClass { public T this[int index] { get => Get(index); set => Set(index, value); } } |