如何在多语言ios应用程序中从左到右更改汉堡包菜单?
目前我正在开发一个iOS应用程序,它需要以阿拉伯语和英语显示。为此,我目前正在使用SWRevealviewcontroller。但是我有一个要求,如果用户从应用程序设置中选择阿拉伯语,汉堡包菜单应该从左向右移动。 请告诉我怎么做。或者任何特定的教程都会对此有所帮助 代码如下:如何在多语言ios应用程序中从左到右更改汉堡包菜单?,ios,swift3,swrevealviewcontroller,Ios,Swift3,Swrevealviewcontroller,目前我正在开发一个iOS应用程序,它需要以阿拉伯语和英语显示。为此,我目前正在使用SWRevealviewcontroller。但是我有一个要求,如果用户从应用程序设置中选择阿拉伯语,汉堡包菜单应该从左向右移动。 请告诉我怎么做。或者任何特定的教程都会对此有所帮助 代码如下: @IBOutlet weak var leftButton: UIBarButtonItem! @IBOutlet weak var rightButton: UIBarButtonItem! o
@IBOutlet weak var leftButton: UIBarButtonItem!
@IBOutlet weak var rightButton: UIBarButtonItem!
override func viewDidLoad() {
super.viewDidLoad()
NotificationCenter.default.addObserver(self, selector: #selector(languageChanged(_:)), name: NSLocale.currentLocaleDidChangeNotification, object: nil)
customSetup()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
func languageChanged(_ note: Notification)
{
customSetup()
}
func customSetup()
{
let preferredLanguage = Locale.preferredLanguages[0] as NSString
print(preferredLanguage)
let storyboard = UIStoryboard(name: "Main", bundle: nil)
if preferredLanguage.substring(with: NSMakeRange(0, 2)) == "ar" {
leftButton.target = self.revealViewController()
leftButton.action = #selector(SWRevealViewController.rightRevealToggle(_:))
rightButton.target = self.revealViewController()
rightButton.action = #selector(SWRevealViewController.revealToggle(_:))
revealViewController().rightViewController = storyboard.instantiateViewController(withIdentifier: "RearTableViewController") as? RevealTableTableViewController
revealViewController().rearViewController = storyboard.instantiateViewController(withIdentifier: "RightViewController") as? RightViewController
}
else {
revealViewController().rightViewController = storyboard.instantiateViewController(withIdentifier: "RightViewController") as? RightViewController
revealViewController().rearViewController = storyboard.instantiateViewController(withIdentifier: "RearTableViewController") as? RevealTableTableViewController
leftButton.target = self.revealViewController()
leftButton.action = #selector(SWRevealViewController.revealToggle(_:))
rightButton.target = self.revealViewController()
rightButton.action = #selector(SWRevealViewController.rightRevealToggle(_:))
}
}
}
但我得到以下错误在
if preferredLanguage.substring(with: NSMakeRange(0, 2)) == "ar" {
leftButton.target = self.revealViewController()
leftButton.action = #selector(SWRevealViewController.rightRevealToggle(_:))
rightButton.target = self.revealViewController()
rightButton.action = #selector(SWRevealViewController.revealToggle(_:))
revealViewController().rightViewController = storyboard.instantiateViewController(withIdentifier: "RearTableViewController") as? RevealTableTableViewController
revealViewController().rearViewController = storyboard.instantiateViewController(withIdentifier: "RightViewController") as? RightViewController
}
你应该为它创建另一个故事板。simple.,根据语言设置两个revals,左侧和右侧,隐藏你的reval@Anbu.Karthik我用代码编辑了这个问题。在运行时获取一些错误。请查看附加的图像paa。是否看到标识符名称和类名,请确保一旦两者都显示出来correct@Anbu.Karthik是的,他们是一样的…问题是这行的RearTableViewController作为?ReveatableTableViewController检查拼写错误或其他兄弟