我一直創建片段,並使用newInstance()模式將我的參數傳遞給片段。這適用於一個或兩個參數。我現在創建了一個具有大約10個參數的片段,並且它們都是可選的。Android - 使用Builder模式創建一個片段?
我正在考慮使用Builder模式,類似於AlertDialog的工作原理。但是,我不確定什麼是實現這一目標的最佳方式,或者如果它是一個好主意。
這是我在想什麼的例子,但有很多變量。
public class MyFragment extends Fragment {
private String name;
private static class Builder {
private String name;
public Builder setName(String name) {
this.name = name;
return this;
}
public MyFragment build() {
return new MyFragment(this);
}
}
// NOT ALLOWED
public MyFragment(Builder builder) {
name = builder.name;
}
// Rest of the fragment...
}
問題是這個片段必須有一個默認的構造函數,所以這是行不通的。
有沒有一種「正確」的方法來實現這一目標?