ਮੇਰੇ ਕੋਲ ਇਹ ਕਲਾਸ ਹੈ, ਪਰ ਮੈਂ ਚਾਹੁੰਦਾ ਹਾਂ ਕਿ ਟੈਕਸਟ ਨੂੰ ਬਟਨ ਦੇ ਹੇਠਾਂ ਲੰਬਕਾਰੀ ਰੂਪ ਵਿੱਚ ਦਿੱਤਾ ਜਾਵੇਃ \\n\\ਨਿਮਪੋਰਟ UIKit\\n\\n ਕਲਾਸ MyButton: UIButton {\\n ਓਵਰਰਾਈਡਫੰਕ ਟਾਈਟਲ ਰੈੱਕਟ (forContentRect ਸਮੱਗਰੀ ਰੈੱਕਟਃ CGRect)-> CGRect {\\n ਲੈੱਟ ਰੈੱਕਟ = super.titleRect (forContentRect: ਸਮੱਗਰੀ ਰੈੱਕਟ) \\n\\n ਵਾਪਸ CGRect (x: 0, y:contentRect.height-rect.height-10, \\n ਚੌਡ਼ਾਈਃ contentRect.width, ਉਚਾਈਃ rect.height + 7) \\n\\n ਓਵਰਰਾਈਡ ਫੰਕ ਚਿੱਤਰRect (forContentRect)ਸਮੱਗਰੀਃ CGRect)-> CGRect {\\n ਲੈੱਟ ਰੈੱਕਟ = super.imageRect (forContentRect: containRect) \\n ਲੈੱਟ ਟਾਈਟਲRect = self.titleRect (forContentRect:(x: contentRect.width/2.0-rect.width/2.0, \\n y: (contentRect.height-titleRect.height)/2-rect.height/2.0, \\nਚੌਡ਼ਾਈਃ rect.width, ਉਚਾਈਃ rect.height) \\n} \\n\\n ਵਰ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਦਾ ਹੈ ਇੰਟਰਿਨਸਿਕਕੰਟੈਂਟਸਾਈਜ਼ਃ CGSsize {\\n ਲੈੱਟ ਸਾਈਜ਼ = super.intrinsicContentSize \\n\\n ਜੇਕਰ ਚਿੱਤਰ ਨੂੰ ਦਿੱਤਾ ਜਾਵੇਚਿੱਤਰ ਵੇਖੋ?. ਚਿੱਤਰ ਲੇਬਲ ਉਚਾਈਃ ਸੀ. ਜੀ. ਐੱਫ. ਫਲੋਟ = 0.0\\ਨ. ਐੱਨ. ਜੇਕਰ ਅਕਾਰ = ਸਿਰਲੇਖ ਲੇਬਲ?self.bounds). ਚੌਡ਼ਾਈ, ਉਚਾਈਃ CGFloat.greatestFiniteMagnitude)) {\\n ਲੇਬਲਕਹਾਈਟ = size.height \\n} \\n\\n ਰਿਟਰਨ CGSsize (ਚੌਡ਼ਾਈਃ size.width, ਉਚਾਈਃimage.size.height + ਲੇਬਲ ਉਚਾਈ + 5) \\n} \\n\\n ਰਿਟਰਨ ਸਾਈਜ਼ \\n} \\n\\n ਓਵਰਰਾਈਡ init (ਫਰੇਮਃ CGRect) {\\n super.init (ਫਰੇਮਃ ਫਰੇਮ) \\n centerTitleLabel (') ", 'ਮੇਰੇ ਕੋਲ ਇਹ ਕਲਾਸ ਹੈ, ਪਰ ਮੈਂ ਚਾਹੁੰਦਾ ਹਾਂ ਕਿ ਟੈਕਸਟ ਬਟਨ ਦੇ ਹੇਠਾਂ ਲੰਬਕਾਰੀ ਰੂਪ ਵਿੱਚ ਦਿੱਤਾ ਜਾਵੇਃ ਆਯਾਤ UIKit ਕਲਾਸ MyButton: UIButton {ਓਵਰਰਾਈਡ ਫੰਕਟਾਈਟਲਰੇਕਟ (forContentRect ਕੰਟੈਂਟਰੇਕਟਃ CGRect)-> CGRect {ਲੈੱਟ ਰੇਕਟ = super.titleRect (forContentRect: ਕੰਟੈਂਟਰੇਕਟ) CGRect (x: 0, y:contentRect.height-rect.height-10, ਚੌਡ਼ਾਈਃ contentRect.width, ਉਚਾਈਃ rect.height + 7)} ਫੰਕ ਚਿੱਤਰ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਦਾ ਹੈRect (forContentRect ਸਮੱਗਰੀ ਲਈRect:CGRect)-> CGRect {ਲੇਟ ਰੈਕਟ = super.imageRect (forContentRect: containRect) ਟਾਈਟਲਰੈਕਟ = self.titleRect (forContentRect: containRect) ਵਾਪਸ ਆਉਣ ਦਿਓ।CGRect (x: contentRect.width/2.0-rect.width 2, y: (contentRect.height-titleRect.height)/2-rect.height/2.0, ਚੌਡ਼ਾਈਃ rect.width, ਉਚਾਈਃrect.height)} ਵਾਰ ਇੰਟਰਿਨਸਿਕਕੰਟੈਂਟਸਾਈਜ਼ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਦਾ ਹੈਃ CGSsize {ਸੈਜ਼ = super.intrinsicContentSize ਜੇਕਰ ਚਿੱਤਰ = ਚਿੱਤਰ ਵੇਖੋ?. ਚਿੱਤਰ {ਵਾਰ ਲੇਬਲ ਉਚਾਈਃਸੀ. ਜੀ. ਐੱਫ. ਫਲੋਟ = 0.0 ਜੇਕਰ ਸਾਈਜ਼ = ਟਾਈਟਲ ਲੇਬਲ?. ਸਾਈਜ਼ ਹੈ ਤਾਂ ਫਿੱਟ (ਸੀ. ਜੀ. ਐੱਸ. ਸਾਈਜ਼ (ਚੌਡ਼ਾਈਃ self.contentRect (ਸੀਮਾ ਲਈਃ self.bounds). ਚੌਡ਼ਾਈ, ਉਚਾਈਃ(ਚੌਡ਼ਾਈਃ size.width, ਉਚਾਈਃ ਚਿੱਤਰ. size.height + ਲੇਬਲ-ਉਚਾਈ + 5))) {ਲੇਬਲ-ਉਚਾਈ = size.height} CGSsize (ਚੌਡ਼ਾਈਃ size.width, ਉਚਾਈਃ ਚਿੱਤਰ. size.height + ਲੇਬਲ-ਉਚਾਈ + 5)} ਵਾਪਸ ਕਰਦਾ ਹੈ।ਸਾਈਜ਼} ਓਵਰਰਾਈਡ init (ਫਰੇਮਃ CGRect) {super.init (ਫਰੇਮਃ ਫਰੇਮ) centerTitleLabel (', ' [\'ਮੇਰੇ ਕੋਲ ਇਹ ਕਲਾਸ ਹੈ, ਪਰ ਮੈਂ ਚਾਹੁੰਦਾ ਹਾਂ ਕਿ ਟੈਕਸਟ ਨੂੰ ਬਟਨ ਦੇ ਹੇਠਾਂ ਲੰਬਕਾਰੀ ਰੂਪ ਵਿੱਚ ਦਿੱਤਾ ਜਾਵੇਃ \\n\\ਨਿਮਪੋਰਟ UIKit\\n\\n ਕਲਾਸ MyButton: UIButton {\\n ਓਵਰਰਾਈਡਫੰਕ ਟਾਈਟਲ ਰੈੱਕਟ (forContentRect ਸਮੱਗਰੀ ਰੈੱਕਟਃ CGRect)-> CGRect {\\n ਲੈੱਟ ਰੈੱਕਟ = super.titleRect (forContentRect: ਸਮੱਗਰੀ ਰੈੱਕਟ) \\n\\n ਵਾਪਸ CGRect (x: 0, y:contentRect.height-rect.height-10, \\n ਚੌਡ਼ਾਈਃ contentRect.width, ਉਚਾਈਃ rect.height + 7) \\n\\n ਓਵਰਰਾਈਡ ਫੰਕ ਚਿੱਤਰRect (forContentRect)ਸਮੱਗਰੀਃ CGRect)-> CGRect {\\n ਲੈੱਟ ਰੈੱਕਟ = super.imageRect (forContentRect: containRect) \\n ਲੈੱਟ ਟਾਈਟਲRect = self.titleRect (forContentRect:(x: contentRect.width/2.0-rect.width/2.0, \\n y: (contentRect.height-titleRect.height)/2-rect.height/2.0, \\nਚੌਡ਼ਾਈਃ rect.width, ਉਚਾਈਃ rect.height) \\n} \\n\\n ਵਰ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਦਾ ਹੈ ਇੰਟਰਿਨਸਿਕਕੰਟੈਂਟਸਾਈਜ਼ਃ CGSsize {\\n ਲੈੱਟ ਸਾਈਜ਼ = super.intrinsicContentSize \\n\\n ਜੇਕਰ ਚਿੱਤਰ ਨੂੰ ਦਿੱਤਾ ਜਾਵੇਚਿੱਤਰ ਵੇਖੋ?. ਚਿੱਤਰ ਲੇਬਲ ਉਚਾਈਃ ਸੀ. ਜੀ. ਐੱਫ. ਫਲੋਟ = 0.0\\ਨ. ਐੱਨ. ਜੇਕਰ ਅਕਾਰ = ਸਿਰਲੇਖ ਲੇਬਲ?self.bounds). ਚੌਡ਼ਾਈ, ਉਚਾਈਃ CGFloat.greatestFiniteMagnitude)) {\\n ਲੇਬਲਕਹਾਈਟ = size.height \\n} \\n\\n ਰਿਟਰਨ CGSsize (ਚੌਡ਼ਾਈਃ size.width, ਉਚਾਈਃimage.size.height + ਲੇਬਲ ਉਚਾਈ + 5) \\n} \\n\\n ਰਿਟਰਨ ਸਾਈਜ਼ \\n} \\n\\n ਓਵਰਰਾਈਡ init (ਫਰੇਮਃ CGRect) {\\n super.init (ਫਰੇਮਃ ਫਰੇਮ) \\n centerTitleLabel (\',\' toਬਟਨ ਦੇ ਟੈਕਸਟ ਨੂੰ ਹੇਠਾਂ ਲੰਬਕਾਰੀ ਕੇਂਦਰ ਵਿੱਚ ਰੱਖੋ, ਤੁਸੀਂ \'ਮਾਈਬਟਨ\' ਕਲਾਸ ਵਿੱਚ \'ਟਾਈਟਲਰੇਕਟ\' ਫੰਕਸ਼ਨ ਨੂੰ ਇਸ ਤਰ੍ਹਾਂ ਬਦਲ ਸਕਦੇ ਹੋਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਹੈਃ \\n \'\' ਸਵਿਫਟ\\ਨਵਰਰਾਈਡ ਫੰਕ ਟਾਈਟਲਰੈੱਕਟ (forContentRect ਕੰਟੈਂਟਰੈੱਕਟਃ CGRect)-> CGRect {\\n ਲੈੱਟ ਰੈੱਕਟ = super.titleRect (forContentRect:ਸਮੱਗਰੀਆਰੈਕਟ) \\n ਚਲੋ ਡੈਲਟਾ = contentRect.height-rect.height-10\\n ਵਾਪਸ CGRect (x: 0, y: contentRect.height-rect.height-ਡੈਲਟਾ, \\n ਚੌਡ਼ਾਈਃcontentRect.width, ਉਚਾਈਃ rect.height + 7) \\n} \\n "\'\\n ਇਹ\' ਟਾਈਟਲਰੇਕਟ \'ਦੀ\' y \'ਸਥਿਤੀ ਨੂੰ ਬਟਨ ਦੇ ਹੇਠਲੇ ਹਿੱਸੇ ਵਿੱਚ ਅਨੁਕੂਲ ਕਰੇਗਾ, ਜਿਸ ਵਿੱਚ ਇੱਕਹੇਠਾਂ ਤੋਂ 10 ਪਿਕਸਲ ਦਾ ਹਾਸ਼ੀਆ। \', "ਇਹ ਕੰਮ ਨਹੀਂ ਕਰਦਾ ਅਤੇ ਹੁਣ ਟੈਕਸਟ ਬਹੁਤ ਛੋਟਾ ਹੈ"] ', 'ਮੇਰੇ ਕੋਲ ਇਹ ਕਲਾਸ ਹੈ, ਪਰ ਮੈਂ ਚਾਹੁੰਦਾ ਹਾਂ ਕਿ ਟੈਕਸਟ ਬਟਨ ਦੇ ਹੇਠਾਂ ਲੰਬਕਾਰੀ ਰੂਪ ਵਿੱਚ ਦਿੱਤਾ ਜਾਵੇਃ ਆਯਾਤ UIKit ਕਲਾਸ MyButton: UIButton {ਓਵਰਰਾਈਡ ਫੰਕਟਾਈਟਲਰੇਕਟ (forContentRect ਕੰਟੈਂਟਰੇਕਟਃ CGRect)-> CGRect {ਲੈੱਟ ਰੇਕਟ = super.titleRect (forContentRect: ਕੰਟੈਂਟਰੇਕਟ) CGRect (x: 0, y:contentRect.height-rect.height-10, ਚੌਡ਼ਾਈਃ contentRect.width, ਉਚਾਈਃ rect.height + 7)} ਫੰਕ ਚਿੱਤਰ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਦਾ ਹੈRect (forContentRect ਸਮੱਗਰੀ ਲਈRect:CGRect)-> CGRect {ਲੇਟ ਰੈਕਟ = super.imageRect (forContentRect: containRect) ਟਾਈਟਲਰੈਕਟ = self.titleRect (forContentRect: containRect) ਵਾਪਸ ਆਉਣ ਦਿਓ।CGRect (x: contentRect.width/2.0-rect.width 2, y: (contentRect.height-titleRect.height)/2-rect.height/2.0, ਚੌਡ਼ਾਈਃ rect.width, ਉਚਾਈਃrect.height)} ਵਾਰ ਇੰਟਰਿਨਸਿਕਕੰਟੈਂਟਸਾਈਜ਼ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਦਾ ਹੈਃ CGSsize {ਸੈਜ਼ = super.intrinsicContentSize ਜੇਕਰ ਚਿੱਤਰ = ਚਿੱਤਰ ਵੇਖੋ?. ਚਿੱਤਰ {ਵਾਰ ਲੇਬਲ ਉਚਾਈਃਸੀ. ਜੀ. ਐੱਫ. ਫਲੋਟ = 0.0 ਜੇਕਰ ਸਾਈਜ਼ = ਟਾਈਟਲ ਲੇਬਲ?. ਸਾਈਜ਼ ਹੈ ਤਾਂ ਫਿੱਟ (ਸੀ. ਜੀ. ਐੱਸ. ਸਾਈਜ਼ (ਚੌਡ਼ਾਈਃ self.contentRect (ਸੀਮਾ ਲਈਃ self.bounds). ਚੌਡ਼ਾਈ, ਉਚਾਈਃ(ਚੌਡ਼ਾਈਃ size.width, ਉਚਾਈਃ ਚਿੱਤਰ. size.height + ਲੇਬਲ-ਉਚਾਈ + 5))) {ਲੇਬਲ-ਉਚਾਈ = size.height} CGSsize (ਚੌਡ਼ਾਈਃ size.width, ਉਚਾਈਃ ਚਿੱਤਰ. size.height + ਲੇਬਲ-ਉਚਾਈ + 5)} ਵਾਪਸ ਕਰਦਾ ਹੈ।ਸਾਈਜ਼} ਓਵਰਰਾਈਡ init (ਫਰੇਮਃ CGRect) {super.init (ਫਰੇਮਃ ਫਰੇਮ) centerTitleLabel ( \n ']