我正在开发一个针对API 25但支持API 17的应用程序。
我以这种方式重写OnAttach(活动):
[TargetApi(Value = 17)]
public override void OnAttach(Activity activity)
{
base.OnAttach(activity);
_parent = (IParent)Activity;
}
但我收到警告:
警告CS0672:成员'SettingsFragment.OnAttach(活动)'覆盖 过时的成员'Fragment.OnAttach(活动)'。添加已过时 属性为'SettingsFragment.OnAttach(Activity)'。
使用OnAttach(上下文),应用程序在旧设备上崩溃。
那么,处理此警告的权利是什么?
非常感谢
答案 0 :(得分:1)
OnAttach (Activity activity)
已弃用,请改用onAttach(Context)
。
用以下代码替换您的代码:
public override void OnAttach(Context context)
{
base.OnAttach(context);
Activity a;
if (context is Activity){
a = (Activity)context;
}
}