There is a misunderstanding by the OP what \newtcbtheorem
does actually:
\newtcbtheorem{foo}{...}{...}{...}
will actually define both the numbered theorem - like enviroment foo
and foo*
, so \newtcbtheorem{foo*}
will actually define foo*
and foo**
, leaving foo*
being numbered however and foo**
is the unnumbered version.
See page 340 of current tcolorbox
manual for a description of this.
In addition, hyperref
should be loaded as last package as almost always in 98% of all cases.
As a reply to the comment below by Bryan-M-H:
The unstarred version of the theorem has an additional mandatory argument that is meant for the label, see the changed example where the label is given as {foo}
, which is extended to th:foo
since the definition of the theorem has th
as label prefix.
Related (but not duplicate) Counter for tcolorbox
Also related (no duplicate too): Problem with tcolorbox package
\documentclass{article}
\usepackage{amsmath,amsthm,amssymb,parskip}
\usepackage[margin=1in]{geometry}
\usepackage{titling,multicol}
\usepackage[most]{tcolorbox}
\usepackage{graphicx,float}
\usepackage{hyperref}
\newtcbtheorem{mytheo}{My theorem}{colback=purple!5,colframe=blue!100!,fonttitle=\bfseries}{th}
\begin{document}
\begin{mytheo*}{}
text...
\end{mytheo*}
See \ref{th:foo}
\begin{mytheo}{Foo}{foo}
text...
\end{mytheo}
\end{document}
