我設置參數使用以下代碼從XML充氣片段:設定參數片段導致IllegalStateException異常
fragment_phone=(AddNewFragment)fm.findFragmentById(R.I'd.phone_fragment);
Bundle args=fragment_phone.getArguments();
if(args==null)
{
args=new Bundle();
args.putString("hint","Phone");
fragment_phone.set arguments(args);
}
else
args.putString("hint","Phone");
//Similarly for two other fragments that are also instances of AddNewFragment
我使用三個Bundle
對象,每個片段。 的logcat的說:Fragment is already active java.lang.IllegalStateException at android.support.v4.app.setArguments
我試圖消除setArguments
導致NullPointerException
當我把這個:
Bundle args=get arguments();
String hint=args.getString("hint");
Log.d(TAG," Hint :"+hint);
您無法爲在xml佈局中定義的片段設置參數。 – Luksprog
那麼我怎樣才能通過它們的任何值,我可以在XML中定義時做到這一點 – vamsiampolu
不在xml中。您可以手動添加它們並使用帶有setArguments()的Bundle,或者您可以調用setter方法(但您需要自己保存數據,因爲它不會像使用參數那樣自動保存)。 – Luksprog