我想在登录页面,调用设置页面的Activity,来用代码设置一个按钮文字。在登录后,成功了,就调用设置页面的方法,但是调用后,在设置页面的写的方法内的改变按钮文字的,并没有执行?
登录页面的判断代码
if (code.equals("1")){
// preferences.edit().putString("isLoginSucceed", "true").commit();//在preferences里面存入
AcSaturnSetting acSaturnSetting = new AcSaturnSetting();
acSaturnSetting.initialize();
}
AcSaturnSetting 就是设置类
下面是 设置类中的改变按钮样式的方法
public void initialize(){
btn_exit_app.setText(R.string.str_setting_exit_app);
}
更改ui界面的方法必须运行在uiThread 而且对应文字控件的文字内容修改需要依托对应界面的引用才能更改
这个和函数一样的道理,需要传一个button类型的才能真正改变,
不能这么写
你需要在从登录页调用启动页的时候,给启动页把需要显示的文字传递过去
然后在启动页的onCreate里面,去设置。
因为你调用startActivity的时候,会有系统创建一个启动页的对象,这个对象不是你手动创建的。所以 即使你自己在登录页手动创建了对象,但是和最终调用的启动页不是同一个对象,当然就没有效果了
创建AcSaturnSetting时,想办法把页面上下文传给他,这样才能在类中控制对应页面的控件
建议用Intent传值