Bueno, aclarado.
El problema está en la línea que asigna en
Parent, que imagino que en FMX la lía. por el tema este de que puedes crear subcomponentes "dentro" de otros componentes (siempre que estos lo permita).
Eliminala y de paso puedes simplificar un poco el código. Esto funciona perfectamente:
Código Delphi
[-]constructor TNavegadorGrid.Create(AOwner: TComponent);
begin
inherited;
Height := 25;
Width := 268;
Stroke.Kind := Stroke.Kind.bkNone;
fill.Color := TAlphaColorRec.White;
if not Assigned(RecBtFirst) then
begin
RecBtFirst := TRectangle.Create(self);
With RecBtFirst do
begin
Align := TAlignLayout.Left;
Stroke.Kind := Stroke.Kind.bkNone;
fill.Color := TAlphaColorRec.red;
end;
ImFirst := Timage.Create(RecBtFirst);
ImFirst.parent := RecBtFirst;
ImFirst.Align := ImFirst.Align.alClient;
ImFirst.Bitmap.LoadFromStream(TResourceStream.Create(HInstance, 'RES_IMG_OK_16X', RT_RCDATA));
end;
end;