最近在知乎上看到一篇很不错的分享,关于Fragment的一些用法和开发经验,其中提倡用全屏的DialogFragment代替Activity处理一些特殊的场景,比如用户点击item触发打开一些内容详情页,相册点击小图片时会将图片全屏放大展示…等等的这些场景都可以考虑用全屏的DialogFragment来代替Activity来代替进行视图的展示。
由于具体的代码逻辑非常简单,我就直接上代码了,注释也写得很清楚,你肯定能看懂:
public class FullScreenDlgFragment extends DialogFragment implements View.OnClickListener{
private int mClickItem;//对应显示ViewPager子项的位置
private List<String> mListImgUrls;
private ViewPager mViewPager;
private Integer[] mImgIds;//本地图片资源ID
private Dialog mDialog;
public static final String TAG_NAME=AlertDlgFragment.class.getName();
private Context mContext;
//即学即用的工厂方法
public static FullScreenDlgFragment newInstance(Context context, Int