我用onSaveInstanceState
保存一个数据项,我还需要保存一个drawable,但是没有一个叫putDrawable
的方法。因此,我如何在Bundle
中保存一个drawable呢?
这是我的代码:
override fun onSaveInstanceState(outState: Bundle) {
super.onSaveInstanceState(outState)
outState.putParcelable("item", item)
outState.putDrawable("drawable", drawable) // This line is not compiling
}
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
item = savedInstanceState?.getParcelable("item") ?: item
return super.onCreateDialog(savedInstanceState)
}
1条答案
按热度按时间e4eetjau1#
您无法在
android.os.Bundle
中传递drawable。你可以用drawable的静态对象创建一个类。当
onSaveInstanceState()
触发时,你可以将drawable存储在类中。然后用同一个类检索drawable。下面的代码可以更好地解释:1.附加类
1.用于设置图纸
1.要获取可绘制对象,请使用