对于MainActivity类型,未定义getFragmentManager()方法

use*_*746 5 android android-fragments

我正在尝试使用Google API在Android中实现Google Map,但我收到错误

对于MainActivity类型,未定义getFragmentManager()方法

整个MainActivity代码如下:

public class MainActivity extends Activity {

private GoogleMap map;

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

    map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();

  }
}
Run Code Online (Sandbox Code Playgroud)

Viv*_*eja 8

片段可从Honey Comb开始提供,因此您的目标API应> = 11

如果你想在早期版本的android中使用片段,你应该使用android support v7库.在这种情况下,您的MainActivity将扩展ActionBarActivity,而不是Activity.

如果您使用的是android 支持v4,您的MainActivity将扩展FragmentActivity,您需要调用getSupportFragmentManager()而不是getFragmentManager()

我希望它有所帮助!


Apo*_*orv 0

如果你想使用getFragmentManager()你需要扩展FragmentActivity而不是Activity

public class MainActivity extends FragmentActivity {

private GoogleMap map;

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

 map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
 }
}
Run Code Online (Sandbox Code Playgroud)