Я пытался создать класс Parcelable, но метод WriteToList
требует только non generic List
, как правильно передать общий список другим действиям?
public class ParceableTextBlock : TextBlock, IParcelable
{
public override IList<IText> Components { get; }
protected ParceableTextBlock(IntPtr javaReference, JniHandleOwnership transfer) : base(javaReference,transfer)
{
}
public int DescribeContents()
{
return 0;
}
public void WriteToParcel(Parcel dest, [GeneratedEnum] ParcelableWriteFlags flags)
{
dest.WriteList(Components);
}
}
![enter image description here](https://i.stack.imgur.com/D66YO.png)
Я попробовал приведенный ниже код, прежде чем пытаться создать Parcelable
класс
List<TextBlock> blocks = new List<TextBlock>();
Intent drawviewIntent = new Intent(this, typeof(SomeActivity));
drawviewIntent.PutExtra("Blocks", blocks);
![enter image description here](https://i.stack.imgur.com/GR4Ss.png)
Класс TextBlock
[Register("com/google/android/gms/vision/text/TextBlock", DoNotGenerateAcw = true)]
public class TextBlock : Java.Lang.Object, IText, IJavaObject, IDisposable
{
protected TextBlock(IntPtr javaReference, JniHandleOwnership transfer);
public virtual Rect BoundingBox { get; }
public virtual IList<IText> Components { get; }
public virtual string Language { get; }
public virtual string Value { get; }
protected override IntPtr ThresholdClass { get; }
protected override Type ThresholdType { get; }
[Register("getCornerPoints", "()[Landroid/graphics/Point;", "GetGetCornerPointsHandler")]
public virtual Point[] GetCornerPoints();
}