我有一个全局的GlobalClass类。
所以在这个类中我有另一个包含布局
的类的对象public class GlobalClass extends Application{
private ClassThatHasTextView foo= null;
function(){
foo.text.setText("jdajiodsa");
}
}
public class ClassThatHasTextView extends Activity{
TextView text;
@Override
protected void onCreate(Bundle savedInstanceState) {
Log.d(TAG, "onCreate");
super.onCreate(savedInstanceState);
setContentView(R.layout.ClassThatHasTextView);
}
}
我想要做的是在text
内的函数中更改GlobalClass
(在ClassThatHasTextView内),是否可能?
如何更改文字?
我正在考虑一些像
这样的解决方案1) this.foo.text.setText("dsajiojdsa")
2)this.getApplicationContext().foo.text.setText("idasisda")
有什么想法吗?
答案 0 :(得分:-1)
您可以使用Setter和Getters
在你的GlobalClass中
private TextView textView;
public void setText(String text) {
if (this.textView != null)
this.textView.setText(text)
}
public void setTextView(TextView textView){
this.textView = textView;
}
在您的Activity类
中 GlobalClass globalClass = (GlobalClass) getApplicationContext();
globalClass.setText("dsajiojdsa");
确保首先在Application类中设置TextView。