在其他方法中使用setBackgroundResource?
问题描述:
我在我的onCreate法下面的代码:在其他方法中使用setBackgroundResource?
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final ImageView field1 = (ImageView) findViewById(R.id.field1);
field1.setBackgroundResource(R.drawable.field0);
我如何可以设置BackgroundResource像这样的任何其他方法:
public void setBackground() {
field1.setBackgroundResource(R.drawable.field2);
}
它说,该字段1不能被解析为变量...
答
集FIELD1全球之类的,具体如下:在onCreate方法的顶部
ImageView field1=null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
field1 = (ImageView) findViewById(R.id.field1);
field1.setBackgroundResource(R.drawable.field0);
}
public void setBackground() {
field1.setBackgroundResource(R.drawable.field2);
}
答
你需要把视图在你的函数的参数:
public void setBackground(ImageView view) {
view.setBackgroundResource(R.drawable.field2);
}
,现在你可以调用它像:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final ImageView field1 = (ImageView) findViewById(R.id.field1);
setBackground(field1);
反正你或许应该以学习编码的基础上读一些代码教程。
答
ImageView field1;
设置ImageView的,因为它可以用整个类的使用
谢谢!你帮了我很多:) – Stupe 2012-07-27 09:33:48