Preference 类有一个名为 getExtras() 的方法。
它可能与 Preference 意图相关,也可能不相关,但可以直接使用该意图获取和放置 Extras。
Preference类中没有putExtra/s()方法,那么……
getExtras()的目的是什么?在哪些场景下使用?
问问题
705 次
2 回答
5
getExtras() 的目的是什么?
它并没有真正做任何有用的事情。严重地。
在源代码中Preference
,有一个private
成员变量mExtras
:
private Bundle mExtras;
但是,它永远不会以任何方式改变(并且不能被外部类访问),除了以下情况:
public Bundle getExtras() {
if (mExtras == null) {
mExtras = new Bundle();
}
return mExtras;
}
public Bundle peekExtras() {
return mExtras;
}
我想它将来可能会用于某些事情,但它是在 API 11 中添加的,并且通过 API 16 仍然无用。
Preference类中没有putExtra/s()方法,那么……在哪些场景下使用?
我想您可以使用它来将项目与偏好相关联,例如:
Bundle extras = myPref.getExtras();
extras.putString("KEY", "Value");
您不需putExtra()
要这样做,而是Bundle
直接访问。但这似乎是它有用的全部。
于 2013-02-20T18:27:18.370 回答
1
文档中没有很好地解释它,但#getExtras
它适用于通过#setFragment
. 只要您使用PreferenceActivity
.
于 2017-09-20T00:14:24.277 回答