我想用TransitionDrawable类创建它,但它需要一个单独的文件transition.xml。在那里我定义了我改变的图像。
我需要在Java代码中定义它们,因为我不知道哪些图像也会改变。我有很多图像,我不小心只得到两张图像,它们之间会互相改变。我能做什么?也许我需要另一堂课。
使用transition.xml的代码:
public class TransitionActivity extends Activity
implements OnClickListener {
private ImageView image;
private TransitionDrawable mTransition;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
image = (ImageView)findViewById(R.id.image);
image.setOnClickListener(this);
Resources res = this.getResources();
mTransition = (TransitionDrawable)res.getDrawable(R.drawable.transition);
}
@Override
public void onClick(View v) {
image.setImageDrawable(mTransition);
mTransition.startTransition(1000);
}
}
答案 0 :(得分:1)
您可以使用课程“TransitionDrawable
以编程方式创建constructor。您不需要从XML获取它。这使您可以灵活地动态分配它之间转换的Drawable。
// drawable1 and drawable2 can be dynamically assigned in your Java code
Drawables[] drawables = new Drawables[] {
drawable1, drawable2
};
mTransition = new TransitionDrawable(drawables);