【问题标题】:Changing height of custom progresssbar not working Xamarin.Forms iOS更改自定义进度条的高度不起作用 Xamarin.Forms iOS
【发布时间】:2017-09-28 17:41:34
【问题描述】:

我尝试使用 PCL 更改 xamarin.forms 中进度条的高度。 解决方案似乎是这样的:Xamarin forms increase ProgressBar height

在 android 上这工作正常,但在 iOS 上它不工作。 有什么建议吗?

颜色和圆角半径更改正在起作用!

我的代码:

using ZFBookingAid.iOS;
using CoreGraphics;
using Foundation;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UIKit;
using Xamarin.Forms;
using Xamarin.Forms.Platform.iOS;

[assembly: ExportRenderer(typeof(ProgressBar), typeof(CustomProgressBarRenderer))]
namespace ZFBookingAid.iOS
{
    public class CustomProgressBarRenderer : ProgressBarRenderer
    {
        protected override void OnElementChanged(
         ElementChangedEventArgs<Xamarin.Forms.ProgressBar> e)
        {
            base.OnElementChanged(e);

            Control.ProgressTintColor = Color.FromRgb(213, 176, 118).ToUIColor();// This changes the color of the progress


            Control.TrackTintColor = Color.FromRgb(255, 255, 255).ToUIColor(); //color where is "no progress"

        }



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

            var X = 0.5f;
            var Y = 30.0f;

            CGAffineTransform transform = CGAffineTransform.MakeScale(X, Y);
            Control.Transform = transform;
            this.ClipsToBounds = true;
            this.Layer.MasksToBounds = true;
            this.Layer.CornerRadius = 5; // This is for rounded corners.

        }
    }
}

【问题讨论】:

    标签: ios forms xamarin xamarin.ios xamarin.forms


    【解决方案1】:
    public async override void LayoutSubviews()
            {
                await Task.Delay(100);
                base.LayoutSubviews();
                CGAffineTransform transform = CGAffineTransform.MakeScale(1.2f, 2.5f);
                transform.TransformSize(this.Frame.Size);
                this.Transform = transform;
                this.ClipsToBounds = true;
                this.Layer.MasksToBounds = true;
    
    
            }
    

    这就是我修复进度条高度问题的方法。

    【讨论】:

      猜你喜欢
      • 2015-11-13
      • 1970-01-01
      • 2018-07-20
      • 1970-01-01
      • 2015-04-18
      • 2020-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多