[英]Pass an Parcelable Object from an Fragment to an activity
I have a fragment MyFragment
我有一个片段
MyFragment
public class MyFragment extends Fragment {
//Some code here like to constructor
//Trying to pass an object to another Activity
Intent i = new Intent(getActivity(), NextActivity.class);
startActivity(i);
i.putExtra("test", parcableObject);
getActivity().finish();
}
And I have an activity NextActivty
我有一个活动
NextActivty
public class NextActivity extends AppCompatActivity {
//Some code here like to constructor
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.next_activity);
Intent intent = getIntent();
mBoard = intent.getParcelableExtra("test");
Log.d(TAG, "onCreate: " + mBoard);
}
Here is my Board
class 这是我的
Board
班
public class Board implements Parcelable {
//Implements all the Parcelable methods.
protected Board(Parcel in) {
//Auto-generated code here
}
public static final Creator<Board> CREATOR = new Creator<Board>() {
//Auto-generated code here
}
@Override
public int describeContents() {
//Auto-generated code here
}
@Override
public void writeToParcel(Parcel dest, int flags) {
//Auto-generated code here
}
}
My mBoard is always null
. 我的mBoard始终为
null
。
Is there something I am not doing right here ? 我在这里有没有做的事情吗?
You put your extra in wrong order. 你把多余的东西放错了顺序。 Put it before you start your activity.
开始活动前先放好它。
public class MyFragment extends Fragment {
//Some code here like to constructor
//Trying to pass an object to another Activity
Intent i = new Intent(getActivity(), NextActivity.class);
i.putExtra("test", parcableObject);
startActivity(i);
getActivity().finish();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.