繁体   English   中英

如何动态设置2背景到Android中的单个ImageView?

[英]How to set 2 backgrounds to single ImageView in Android dynamically?

嗨,我正在编写一个应用程序,我需要为一个ImageView提供两个不同的背景。 但是,我不知道该怎么做。

就我而言,我需要将动画和背景图像设置为单个ImageView; 但它只显示动画而不显示图像背景。

我将图像背景写为ic_launcher图像,但未显示,仅显示了动画。 我需要同时使用相同的ImageView进行显示。 谁能帮我?

我的代码:

    public class MainActivity extends Activity {
    AnimationDrawable Tranninganimation3;
     ImageView unlockimg;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

      Tranninganimation3 = new AnimationDrawable();
      Tranninganimation3.setOneShot(false);
       new playninzi3().onPreExecute();

       unlockimg=(ImageView)findViewById(R.id.img);
      unlockimg.setBackgroundResource(R.drawable.ic_launcher);

       unlockimg.setBackgroundDrawable(Tranninganimation3);  
       unlockimg.post(new Starter3()); 
}
public class playninzi3 extends AsyncTask<Void, Void, Void> {

    @Override
    protected void onPreExecute() {

        try {


            Tranninganimation3.addFrame(
                    getResources()
                            .getDrawable(R.drawable.glow_animated000copy), 150);
            Tranninganimation3.addFrame(
                    getResources()
                            .getDrawable(R.drawable.glow_animated002copy), 150);
            Tranninganimation3.addFrame(
                    getResources()
                            .getDrawable(R.drawable.glow_animated004copy), 150);
            Tranninganimation3.addFrame(
                    getResources()
                            .getDrawable(R.drawable.glow_animated006copy), 150);
            Tranninganimation3.addFrame(
                    getResources()
                             .getDrawable(R.drawable.glow_animated008copy), 150);
            Tranninganimation3.addFrame(
                    getResources()
                            .getDrawable(R.drawable.glow_animated010copy), 150);
            Tranninganimation3.addFrame(
                    getResources()
                            .getDrawable(R.drawable.glow_animated012copy), 150);
            Tranninganimation3.addFrame(
                    getResources()
                            .getDrawable(R.drawable.glow_animated014copy), 150);


        } catch (Exception e) {

        }

    }

    @Override
    protected Void doInBackground(Void... arg0) {
        // TODO Auto-generated method stub
        return null;
    }
}
 class Starter3 implements Runnable {

        @Override
        public void run() {
            Tranninganimation3.start();
        }

    }
}

我已经使用LayerDrawable和ImageView.setImageDrawable轻松完成了它

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM