C# 如何防止自定义视图在屏幕方向更改时丢失状态;“Android的Mono”;

C# 如何防止自定义视图在屏幕方向更改时丢失状态;“Android的Mono”;,c#,android,xamarin.android,C#,Android,Xamarin.android,显示java的“如何防止自定义视图在屏幕方向更改期间丢失状态”。我的问题是针对Android版Mono的“如何防止自定义视图在屏幕方向改变时丢失状态” 以及如何将java代码转换为c#代码 公共静态最终包裹。创建者= 新建Parcelable.Creator(){ public SavedState createFromParcel(中的地块){ 返回新的SavedState(in); } public SavedState[]新数组(整数大小){ 返回新的SavedState[大小]; } }

显示java的“如何防止自定义视图在屏幕方向更改期间丢失状态”。我的问题是针对Android版Mono的“如何防止自定义视图在屏幕方向改变时丢失状态”

以及如何将java代码转换为c#代码

公共静态最终包裹。创建者=
新建Parcelable.Creator(){
public SavedState createFromParcel(中的地块){
返回新的SavedState(in);
}
public SavedState[]新数组(整数大小){
返回新的SavedState[大小];
}
};

我不知道您想做的是可能的还是不可能的,但我知道此时不可能翻译示例java代码,因为它使用的是Parcelable

下面是mono for android限制页面的摘录,可以查看

无法实现Android.OS.IParcelable

由于android.os.Parcelable接口要求:

实现Parcelable接口的类还必须具有名为CREATOR的静态字段,该字段是实现Parcelable.CREATOR接口的对象


由于mandroid.exe当前无法生成字段,因此无法实现此接口。支持将在将来的版本中添加。

那么在屏幕旋转后如何保存自定义组件?
public static final Parcelable.Creator<SavedState> CREATOR =
    new Parcelable.Creator<SavedState>() {
      public SavedState createFromParcel(Parcel in) {
        return new SavedState(in);
      }
      public SavedState[] newArray(int size) {
        return new SavedState[size];
      }
};