• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - Xamarin iOS 图像更改过渡

[复制链接]
菜鸟教程小白 发表于 2022-12-13 11:34:05 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我正在使用 Xamarin.IOS 开发应用程序,但我没有使用 Xamarin.Forms。
我有一个设置了 ImageView 的屏幕。
现在我想在带有过渡的 2/3/4 图像之间进行切换(淡入淡出,移入……没关系)。
有什么办法可以做到吗?
到目前为止,这是我的代码:

        imgView.AnimationImages = new UIImage[] {
            UIImage.FromBundle ("tmp_running.jpg")
            , UIImage.FromBundle ("tmp_cycling.jpg")

        } ;
        imgView.AnimationRepeatCount = 0;
        imgView.AnimationDuration = 3;
        imgView.StartAnimating ();

我已经尝试过这种方法:

        CATransition customTransition = new CATransition();
        customTransition.FadeInDuration = 3.0f;
        customTransition.FadeOutDuration = 3.0f;
        customTransition.TimingFunction = CAMediaTimingFunction.FromName(
            CAMediaTimingFunction.EaseInEaseOut);
        customTransition.Type = CATransition.TransitionFade;

        and then : 
        imgView.Layer.AddAnimation(customTransition, null);

但没有任何效果。

你知道怎么做这个简单的任务吗?



Best Answer-推荐答案


可以这样做:

    static int count = 0;
    UIImageView _imageView;

    public override void ViewDidLoad ()
    {
        base.ViewDidLoad ();

        _imageView = new UIImageView (new CGRect(0, 0, 100, 100));
        _imageView.Image = new UIImage ("1.png");
        Add (_imageView);

        animateImage ();
    }

    public void animateImage()
    {
        var animationImages = new List<UIImage> () {
            UIImage.FromFile ("1.png"),
            UIImage.FromFile ("2.png"),
            UIImage.FromFile ("3.png"),
            UIImage.FromFile ("4.png"),
            UIImage.FromFile ("5.png")};

        UIImage image = animationImages[count % animationImages.Count];

        UIView.Transition (_imageView, 3.0,
            UIViewAnimationOptions.TransitionCrossDissolve,
            () => {_imageView.Image = image;},
            () => { animateImage ();
                    count++; }
        );
    }

关于ios - Xamarin iOS 图像更改过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32299807/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap