我制作了一个可以绘制的自定义视图,该视图保存到arraylist中。我想在onSaveInstanceState中保存这些ArrayList,并在onRestoreInstanceState中检索它们。我曾尝试将SharedReferences与Json一起使用,但它不起作用,甚至无法打包。我想保存路径和油漆。
钢笔类:
private static class Pen implements Parcelable {
Path path;
Paint paint;
int color;
float width;
Pen(int colort, float widtht ) {
color = colort;
width = widtht;
path = new Path();
paint = new Paint();
paint.setAntiAlias(true);
paint.setStrokeWidth(width);
paint.setColor(color);
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeJoin(Paint.Join.ROUND);
paint.setStrokeCap(Paint.Cap.ROUND);
}
// De-parcel Pen object
public Pen(Parcel in) {
color = in.readInt();
width = in.readFloat();
path = new Path();
paint = new Paint();
paint.setAntiAlias(true);
paint.setStrokeWidth(width);
paint.setColor(color);
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeJoin(Paint.Join.ROUND);
paint.setStrokeCap(Paint.Cap.ROUND);
}
// Function that writes Dice values to parcel
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(color);
dest.writeFloat(width);
}
// Creator of Parcelable
public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
public Pen createFromParcel(Parcel in) {
return new Pen(in);
}
public Pen[] newArray(int size) {
return new Pen[size];
}
};
// Function to implement Parcelable interface
@Override
public int describeContents() {
return 0;
}
}
OnsaveInstanceState:
@Override
public Parcelable onSaveInstanceState()
{
Bundle bundle = new Bundle();
bundle.putParcelable("superState", super.onSaveInstanceState());
bundle.putParcelableArrayList("pen", mPenList);
return bundle;
}
onRestoreInstanceState:
@Override
public void onRestoreInstanceState(Parcelable state)
{
if (state instanceof Bundle) // implicit null check
{
Bundle bundle = (Bundle) state;
this.mPenList = bundle.getParcelableArrayList("pen");
state = bundle.getParcelable("superState");
}
super.onRestoreInstanceState(state);
}
@Override
protected void onSaveInstanceState(Bundle outState) {
// Save the state so that next time we know if we need to refresh data.
outState.putParcelableArrayList("yourkey",yourlist);
);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
list= savedInstanceState.getParcelableArrayList("yourkey");
}
也许这可以帮助你:)
我正在创建一个JavaFX2.2程序,需要创建自定义UI控件(仅限于顶部的最小化最大化/恢复关闭按钮)。我需要为这个目的创建自定义按钮,简单到刚刚创建。 我只需要最小化和最大化/恢复按钮的真正代码(关闭按钮相当于儿戏)。最小化按钮将应用程序恢复到任务栏。最大化按钮将其最大化以适应用户的屏幕,并在最大化时切换到还原按钮。当单击恢复按钮时,窗口将恢复到其初始大小(1200x600)。 我尝试了在我的f
我刚刚读了Hystrix指南,正试图把我的头缠绕在默认断路器和恢复周期是如何操作的,然后是如何定制它们的行为。 显然,如果电路跳闸,Hystrix会自动调用该命令的方法;这一点我很理解。但是,首先要根据什么标准来使电路跳闸呢?理想情况下,我想尝试多次击打支持服务(例如,最多3次),然后我们才会认为该服务是脱机/不健康的,并跳闸断路器。我该如何实现?在哪里实现? null 所以我猜我的下一个问题部分
在绘画的时候,经常会有这种情况,本来正在用绿色笔画,突然需要用红色笔画几笔,但画完了之后又要换成绿色笔。如果是在现实中作画,可以把笔蘸上不同的墨水,画了之后又蘸上之前的墨水,或者准备几只笔,要用哪只就选哪只。 在Canvas中也可以这样,不过Canvas中的画笔永远只有一只。所以,如果要更换画笔的颜色,就需要保存和恢复状态。状态其实就是画布当前属性的一个快照,包括: 图形的属性值,如strokeS
问题内容: 在尝试编写自己的Python PyQt4模块函数之前,我想问一下是否有人可以共享这样的函数。 在我有许多使用PyQt4和qtDesigner构建的GUI的python程序中,我使用QSettings方法在关闭和启动期间保存和恢复UI状态以及所有小部件的值。 本示例说明了如何保存和还原一些lineEdit,checkBox和radioButton字段。 是否有人拥有可以遍历UI并找到所有
我有一个ViewPager有3个碎片绑定在FragmentPagerAdapter在一个FragmentActivity中,当我切换到不同的应用程序,回到我的应用程序后,或者在一个输入调用后,碎片没有恢复到以前的状态,一个碎片完全消失了,一些碎片按钮点击不工作..但在模拟器中它的工作很好 帮帮我吧...
我正在使用node.sdk、stormpath、express.js和passport.js为我的新网站制作一个用户帐户系统。所以我设置了一个自定义数据槽的帐户。我想知道,当他们注销时,我如何将新数据发布到这个自定义数据槽中,并在他们登录时检索它。我对使用node是新手,我不知道在他们登录时,我的代码应该放在哪里,也不知道如何访问“用户”帐户信息。据我所知,Passport.js正在处理身份验证,