我在我的应用程序中使用了getChildFragmentManager(),我想在Fragment OncreateView()里面调用下面的代码。任何人都可以帮助实现这个功能,实际上我已经保留了代码,我在行中出错了2号?
1. SupportPlaceAutocompleteFragment autocompleteFragment = (SupportPlaceAutocompleteFragment) getFragmentManager()
2. .findFragmentById(R.id.place_autocomplete_fragment);
3. autocompleteFragment.setOnPlaceSelectedListener(this);
4. autocompleteFragment.setHint("Select a Location");
错误: java.lang.NullPointerException:尝试调用虚拟方法'void com.google.android.gms.location.places.ui.SupportPlaceAutocompleteFragment.setOnPlaceSelectedListener( com.google。空对象引用上的“android.gms.location.places.ui.PlaceSelectionListener”) com.example.sample.fragments.LocationFragment.onCreateView(LocationFragment.java:2)
at
答案 0 :(得分:2)
当您使用SupportPlaceAutocompleteFragment
时,您的活动应该实施AppCompatActivity
(或FragmentActivity
并使用getSupportFragmentManager()
)来覆盖您的片段。
或者反过来说,创建一个PlaceAutoCompleteFragment
而不是SupportPlaceAutoCompleteFragment
。
在此处检查选项#1的支持部分 https://developers.google.com/places/android-api/autocomplete
PS。我假设您的布局xml中已经有R.id.place_autocomplete_fragment
。