如何用Fragment#setArguments(Bundle)传递变量到DialogFragment

原问题来自于CSDN问答频道,更多解决方案见:http://ask.csdn.net/questions/1751

问题描述:

在执行一些动作时需要传递变量到DialogFragment,Eclipse建议我用

Fragment#setArguments(Bundle)

不知道怎么用?

解决方案:

使用newInstance

static MyDialogFragment newInstance(int num) {
    MyDialogFragment f = new MyDialogFragment();

    // Supply num input as an argument.
    Bundle args = new Bundle();
    args.putInt("num", num);
    f.setArguments(args);

    return f;
}

这样获取参数

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    mNum = getArguments().getInt("num");
    ...
}



 

你可能感兴趣的:(android,移动开发)