結論
以下のように, 「画像の読み込み時」にRenderingModeにalwaysTemplateを指定します.
let img = UIImage(named: "test.png")?.withRenderingMode(.alwaysTemplate)
self.imgButton.setImage(img, for: .normal)
self.imgButton.tintColor = UIColor.green //ボタンにセットした画像の色を緑にする.
注意事項
以下のように画像を取得してから, 違う行でRenderingModeを変更しても, 画像の色を変更することはできません. エラーは出ませんが, 画像取得時にRenderingModeを変更しなければならないようです.
////////////////////////////////////上手く行かない例///////////////////////////////
let img = UIImage(named: "test.png")
//ここ.
img?.withRenderingMode(UIImage.RenderingMode.alwaysTemplate)
self.imgButton.setImage(img, for: .normal)
self.imgButton.tintColor = UIColor.green
補足
UIImage.RenderingMode : 画像生成時(レンダリング)のモードを特定する.
alwaysTemplate : 入力画像のカラー情報を無視して, 画像を描画するようにする.
[参考]https://developer.apple.com/documentation/uikit/uiimage/renderingmode