在我的MapActivity
课程中,我设置了一个按钮,该按钮需要返回到其他课程,似乎无法让setOnClickListener
在FragmentActivity
中工作。这是我的代码:
public class MapsActivity extends FragmentActivity implements OnMapReadyCallback {
Button Live;
private GoogleMap mMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps);
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
Live= findViewById(R.id.GoToLive);
Live.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent startIntent = new Intent(getApplicationContext(), WorldTabBar.class);
startActivity(startIntent);
}
});
}
}
当我点击MapActivity内的按钮时,应用程序崩溃,我在Android Monitor中收到以下错误:
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.marcuscarso.appstuff/com.example.marcuscarso.appstuff.WorldTabBar}: java.lang.ClassCastException: com.example.marcuscarso.appstuff.WorldTabBar cannot be cast to android.app.Activity
扩展Fragment
您需要使用OnCreateView
并设置rootView。但在扩展FragmentActivity
中,它不起作用。使用FragmentActivity
和onCreateView
=“从未使用过”时出现savedInstanceState
错误
我已经在StackOverflow上看到了一些适用于setOnClickListener
的人的解决方案,但我现在要问,因为这些解决方案对我不起作用。所以我得到了这个错误,我该怎么做才能解决它?