I think as a matter of law that the a State government can do whatever it wants within the bounds set by the state constitution and not violating civil rights.
That means the state can regulate what a city can or cannot do within that state.
Legally that is. A county government is a state creation, a township is a state creation, as are also charter cities, etc. Now some big cities predate the state government but I think their ability to govern also comes from the state.
Note that the state's ability to govern does not come from the federal government, it's actually the other way. That's why states are states and not provinces. A province is a creation of a state.
I'm not a lawyer, this is just my general sense of how things work.
Now all that being said, as a general conservative principle I believe that each level of government should do only those things that can be practically done at that level. For the federal government that means defense and coining money among other things. For a state that means establishing criminal punishment and a court system, friendly business laws, roads, etc.
Any government function should be pushed to the lowest level of government that can practically accomplish that function. It doesn't make sense to have a statewide zoning board, (or board of education for that matter, but that's another discussion) So on questions of home rule, I'm usually going to side with the locality. Unless (and this is a big unless) the locality is making decisions that affect everyone in the state or everyone in a wide region (such as not policing their criminal element).
well that turned out longer than I thought.