バンドルを使用してTIMEのインスタンス(オブジェクト)を渡す方法???バンドルでTIMEオブジェクトを渡す
は簡単な質問かもしれないが、私は正確な答えを必要とする...
DATE date=new DATE();
バンドルを使用してTIMEのインスタンス(オブジェクト)を渡す方法???バンドルでTIMEオブジェクトを渡す
は簡単な質問かもしれないが、私は正確な答えを必要とする...
DATE date=new DATE();
このコードは、私がメモリから書いているので、おおよそのものです。 ActivityBののonCreateでその後
Intent mIntent = new Intent(ActivityA.this, ActivityB.class);
mIntent.putLong(KEY, getTimeMilliseconds());
startactivity(mIntent);
:
Bundle mBundle = getItent().getExtras();
Long time = mBundle.getLong(KEY);
注:あなたがしたい場合
putLong /にGetLongは...複数のString型、intに
を適用することができますカスタムオブジェクトに適用するには、そのオブジェクトを作成する必要があります Parcelableを実装します。あなたが
get/putSerializable
を使用できるように
は、例えば、バンドル内のあなたの日付を表すlong値を渡します長い時間=新しいDate()。getTime();
日付は、直列化可能です:MyFragment
で
MyFragment fragment = new MyFragment();
Bundle bundle = new Bundle();
bundle.putSerializable(MyFragment.DATE_KEY, new Date());
fragment.setArguments(bundle);
:
public void onViewStateRestored(Bundle savedInstanceState) {
super.onViewStateRestored(savedInstanceState);
Bundle bundle = savedInstanceState != null ? savedInstanceState : getArguments();
Date startTime = (Date) bundle.getSerializable(MyFragment.DATE_KEY);
this.time = startTime;
}
public void onSaveInstanceState(Bundle bundle) {
super.onSaveInstanceState(bundle);
bundle.putSerializable(MyFragment.DATE_KEY, this.time);
}
私は活動ではない別のクラスに渡す必要がありますが、...することができます誰でもしてください特定であるか? – subrussn90
parcelable [Parcelable Example](http://stackoverflow.com/a/8653518/794291)を実装するにはオブジェクトが必要です。あなたのオブジェクトがそれをしたら、それを転送するためにバンドルを使うことができます。 – Rick