天天看点

ios多语言切换

软件需要适配多语言,通常想到的第一个方法就是切换多语言的时候发送通知到各个页面,从而实现多语言的切换,其实这个方法太不好了,通知多,影响大,有的干脆直接重启软件来切换多语言,其实这几种都是不可取的,现在作者提供一个简单的方法仅供参考

1理论准备

现在大部分软件页面的控制器都是tabbar和narbar来进行控制的,我们知道一个页面的生命周期大概是这样的

http://blog.csdn.net/huifeidexin_1/article/details/7566226

其中我们主要关心这几条:

4、viewDidLoad                   载入完成,可以进行自定义数据以及动态创建其他控件

5、viewWillAppear              视图将出现在屏幕之前,马上这个视图就会被展现在屏幕上了

6、viewDidAppear               视图已在屏幕上渲染完成

当一个视图被移除屏幕并且销毁的时候的执行顺序,这个顺序差不多和上面的相反

1、viewWillDisappear            视图将被从屏幕上移除之前执行

2、viewDidDisappear             视图已经被从屏幕上移除,用户看不到这个视图了

每次我们在切换多语言之后,返回之前的页面,页面都会在执行5,6的步骤,因此在5,6里面我们可以进行控件的赋值,因此多语言切换之后返回之前的页面页面就会重新刷新语言