android关于fragment的构造函数用法建议

丈夫欲遂平生志,一载寒窗一举汤。这篇文章主要讲述android关于fragment的构造函数用法建议相关的知识,希望能为你提供帮助。
错误信息

Avoid non-default constructors in fragments: use a default constructor plus Fragment#setArguments(Bundle) instead:

因为原生的fragment的管理和在屏幕上显示,是推荐不要在任何继承fragment类里面,去创建类的构造方法,否则在运行时,会出现问题。如果你的fragment没有声明任何的构造函数,系统会自动帮你创建一个构造。除非你有声明一个带参的构造函数,才需要声明一个无参的构造函数。
解决的办法
public static final GridFragment newInstance(String tabId){    GridFragment f = new GridFragment();     Bundle bdl = new Bundle(2);     bdl.putString(TAB_ID, tabId);     f.setArguments(bdl);     return f; }
@Overridepublic void onCreate(Bundle savedInstanceState) {String tabId = getArguments().getString(TAB_ID); }

要是非要不按规则来就这样
@SuppressLint("ValidFragment")public PlaceDialogFragment(Place place, DisplayMetrics dm){        super();         this.mPlace = place;         this.mMetrics = dm;     }

避免使用非默认构造函数
可以在ShowSynopsis上面加上@SuppressLint("ValidFragment"),忽略警告。
或者加入这句代码@SuppressLint(“ ValidFragment")


磊磊tua
【android关于fragment的构造函数用法建议】 


    推荐阅读