I want to customize my NavigationBar
button and using my own images.
The question is what the size should be?
I found that the button size should be 40*40, so the image should be 80*80 for retina?
These are the sizes that the documentation recommends for custom icons now.
Create two images of the above pixel sizes and then add them to a new image set in your Assets.xcassets file. (Apparently the @1 size is no longer needed.)
Alternatively, you could use a universal vector image (pdf) (see here and here). This has been my preference recently.
Related answer