Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to align text inside textView vertically?

I want to align vertically the text inside my UITextView (so it will be in the middle of it). How can i achieve that? I looked up and could not find any answer that could help me.

Thanks in advance.

like image 765
Volkan Avatar asked Dec 29 '16 21:12

Volkan


People also ask

How do you center align text in TextView?

android:gravity="center" for text center in TextView. android:gravity="center_horizontal" inner text if you want horizontally centered. android:gravity="center_vertical" inner text if you want vertically centered. android:layout_centerInParent="true" if you want TextView in center position of parent view.

How do I make TextView vertical?

Implement vertical TextView by calling setRotation() We can call the method of TextView object to make it display in vertical. Java code, call setRotation() to display the TextView (verticalTextView) in vertical. remark: Have to modify AndroidManifest. xml to set android:minSdkVersion="11" or higher.

How do I center a textbox in android Studio?

Adding android:gravity="center" in your TextView will do the trick (be the parent layout is Relative/Linear )!


1 Answers

Link your Text View to your View Controller and name it as you want (let's say textView).

In viewDidLayoutSubviews function put this line:

textView.centerVertically() 

Then under the last curly bracket of your class put this extension:

extension UITextView {     func centerVertically() {         let fittingSize = CGSize(width: bounds.width, height: CGFloat.greatestFiniteMagnitude)         let size = sizeThatFits(fittingSize)         let topOffset = (bounds.size.height - size.height * zoomScale) / 2         let positiveTopOffset = max(1, topOffset)         contentOffset.y = -positiveTopOffset     }    } 

To use this function in Swift 2.0 just change CGFloat.greatestFiniteMagnitude to CGFloat.max

like image 136
mike vorisis Avatar answered Sep 28 '22 01:09

mike vorisis