I have a running app, and I'm trying to add RTL language support.
I use the line below in my AppDelegate to execute after start, specifically in didFinishLaunchingWithOptions.
UIView.appearance().semanticContentAttribute = .forceRightToLeft
It was working perfectly on iOS 10, but now on iOS 11, the default tableView cell's labels are still aligned LTR.

You should set the label's semantic content attribute to .forceRightToLeft as well.
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: <your cell ID>, for: indexPath)
cell.textLabel?.semanticContentAttribute = .forceRightToLeft
return cell
}
Select the text label of the cell.

Open the Attributes inspector (the fourth icon from the left) from the toolbar on the right.

In the View section, set the Semantic option to Force Right-to-Left.


If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With