自定义对象“ Option”有一些方法,我可以在optionList.get(1)
上调用,但是我不能调用fragment.getArguments.get(ARG_FIRST_OPTION)
,尽管后者是Option类型的。我该如何称呼他们?
public RecommendationsFragment() {}
public static RecommendationsFragment newInstance(Collection<Option> options) {
RecommendationsFragment fragment = new RecommendationsFragment();
Bundle args = new Bundle();
List<Option> optionList = (List<Option>) options;
args.putParcelable(ARG_FIRST_OPTION , optionList.get(0));
args.putParcelable(ARG_SECOND_OPTION , optionList.get(1));
args.putParcelable(ARG_THIRD_OPTION , optionList.get(2));
fragment.setArguments(args);
return fragment;
}
答案 0 :(得分:2)
get
重新运行普通的旧Object
。您必须向下转换才能使用Option
的方法:
((Option) (fragment.getArguments().get(ARG_FIRST_OPTION)).someOptionMethod()