Animating scale of edge loop to cover texture, not stretch
Use Edge Slide for editting - Ctrl+E &gt; Edge Slide
In the operator panel check the Correct UVs option:

This will crop the outer ring. For the inner ring use different material

If you want this effect in an shapekeys animation it wont work since they do not affect UV coords. You would have to use a UV Project modifier for the outer rim material:

add an empty


and setup the modifier for the circle like this:



Now it should work also with shapekeys