我有一个主活动类和一个片段类:
我想将片段类的变量访问到我的主活动类中:
MyFragment类:

public class DemoFragment extends Fragment {

Public String mydata="hello";
.. //other code
}

主要活动类别:
public class MainActivity extends ActionBarActivity {

   ..//other code
   DemoFragment df;

  @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mContext = this;

        df = new DemoFragment();

        String newdata = df.mydata; //access from fragment but it shows null

    }

}

那么,如何将片段类变量值访问到主活动中?

最佳答案

在片段中创建
(a)两个领域:

listener mCallback;
Activity mActivity;

(b)接口:
interface mydataBack(){
   public void bringBackString(String stringSentBack);
}

(c)方法
@Override
        public void onAttach(Activity activity) {
            mActivity=activity;
            super.onAttach(activity);
        mCallback = (listener) mActivity;
        }`

然后在片段中调用方法bringbackstring(string),当您希望发回字符串时。
在你的主要活动中:
(a)加上“工具”。类声明中的“侦听器”
public class MainActivity extends ActionBarActivity implements DemoFragment.listener {  etc   and

(b)实施接口方法:
public void bringBackString(String stringBroughtBack){
....  do something with the string
}

10-04 19:06