我在使用startActivity从活动更改为另一个活动时遇到问题。 当我点击一个按钮时,它应该调用另一个活动,它会这样做,但它不是我想要的活动
我的代码:
这是按钮的单击操作,在执行startActivity后,它会打开一个白色屏幕。
public void initiateRoute(View view) {
// I have a breakpoint on the line below and it comes here
Intent i= new Intent(this,GMapsActivity.class);
startActivity(i);
}
这是我的目标活动xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="fill_parent">
<fragment
android:id="@+id/map"
android:layout_above="@+id/footer"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.SupportMapFragment"
tools:layout="@layout/abc_action_bar_title_item" />
<LinearLayout
android:id="@+id/footer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_alignParentBottom="true">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Pausar Rota"
android:layout_weight="0.5"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Parar captura de Rota"/>
</LinearLayout>
</RelativeLayout>
这是我的Activity类:
public class GMapsActivity extends Activity {
private GoogleMap mMap;
@Override
public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) {
// I have another breakpoint on the line below and it never comes here
super.onCreate(savedInstanceState, persistentState);
setContentView(R.layout.map_activity);
createMap();
}
private void createMap() {
mMap = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
mMap.setMapType(GoogleMap.MAP_TYPE_SATELLITE);
final LatLng CIU = new LatLng(35.21843892856462, 33.41662287712097);
Marker ciu = mMap.addMarker(new MarkerOptions()
.position(CIU).title("My Office"));
}
}
我在stackoverflow中进行了很多搜索,在google中,我没有找到任何可以帮助我的内容。
提前致谢。
答案 0 :(得分:0)
您正在将片段视为活动。您需要定义片段并执行COMMIT以查看结果,如下所示:
mMapFragment = MapFragment.newInstance();
FragmentTransaction fragmentTransaction =
getFragmentManager().beginTransaction();
fragmentTransaction.add(R.id.my_container, mMapFragment);
fragmentTransaction.commit();
本指南将帮助您:https://developers.google.com/maps/documentation/android/map