You can extends SupportMapFragment and override OnCreateView to do it programatically::
public class myMap extends SupportMapFragment{
private Context context;
public View onCreateView(LayoutInflater inflater,
@Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
// TODO Auto-generated method stub
View v = super.onCreateView(inflater, container,savedInstanceState);
//save context
this.context = v.getContext();
RelativeLayout view = new RelativeLayout(v.getContext());
//add relative layout
view.addView(v, new RelativeLayout.LayoutParams(-1, -1));
TextView stuff = new EditText(v.getContext());
stuff.setText("Hey you, I was added programatically!");
view.addView(stuff);
initializeMap();
return view; //return
}
private initializeMap(){
//add things to the map here
getMap().addMarker(new MarkerOptions().add(new LatLng(-37.81319, 144.96298)));
}
}