Swift Increase font size of the UITextview,how?

42,536

Solution 1

I don't think there's a method named increaseSize(). May be you've find some UIFont or UITextView category.

The official UIFont class document doesn't reveal any such method.

Additionally you can increase the font like this:

textview.font = UIFont(name: textview.font.fontName, size: 18)

The above statement will simply set the existing font size to 18, change it to whatever you want.

However if you want some method like you've posted, you can introduce your own category like this:

extension UITextView {
    func increaseFontSize () {
        self.font =  UIFont(name: self.font.fontName, size: self.font. pointSize+1)!
    }
}

Swift 2 & 3:

import UIKit
extension UITextView {
    func increaseFontSize () {
        self.font =  UIFont(name: (self.font?.fontName)!, size: (self.font?.pointSize)!+1)!
    }
}

and simply import this to wherever you want to use like this:

textview.increaseFontSize()

it'll increase the font by 1 every time you call it..

Solution 2

For the system font, this also works:

yourTextView.font = .systemFontOfSize(16)

Solution 3

Swift 4,5

yourTextView.font = .systemFont(ofSize: 16)

Solution 4

Swift 5

textView.font = UIFont.preferredFont(forTextStyle: .body) //.title, .headline, etc..
Share:
42,536
GioB
Author by

GioB

Updated on July 22, 2022

Comments

  • GioB
    GioB almost 2 years

    I am trying to add two buttons to my app to set the font size of a UITextview,and i found this function

    textview.font.increaseSize(...) //and decreaseSize(...)
    

    But i don't understand what I have to put inside the parentheses,i want to increase and decrease the font size by one point

    Thanks for the answers