آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

ست کردن پس زمینه ی ویو اصلی

124717  9 سال پیش  7 سال پیش
0 0

سلام

من برای بک گراندم یه عکس رو میخام به صورتKenBurns نمایش بدم. از https://github.com/calm/KenBurns این لایبرری استفاده کردم ولی خروجی تابعی که بهم میده از نوع کلاس KenBurnsImageView هست که یک نوع UIView هست که برای ست کردنش به یک UIImageView نمیدونم باید چ کار کنم. لطفا راهنمایی کنید. ؟؟؟؟؟ خاهشا اگر میتونید راهنمایی کنید.

0 0
سلام ، زمانی که شما نمونه ای از این ویو را میسازید در متد init یک UIImageView تولید میشود و نیازی به یک UIImageView دیگر ندارید . برای نمایش تصویر نمونه ساخته شده را داخل View اصلی add کنید . (9 سال پیش)
0 0
سلام ببنید من اگه اینجوری تو viewDidLoad بنویسم view = newKenBurnsImageView(image: backGroundAnimation) کل view رو میگیره و بقیه ی اجزا رو نشون نمیده ولی اگه view.addSubview(newKenBurnsImageView(image: backGroundAnimation)) این رو بنویسم بک گراند منو مشکی نشون میده. (9 سال پیش)
0 0
شما ابتدا عکس رو داخل یک View کوچک اضافه کنید اگر به درستی نمایش داده شد سپس از طریق addSubView داخل View اصلی View را ست کنید . (9 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
Criss  7 سال پیش
0 0

من این کد رو تست کردم جواب گرفتم :


    override func viewDidLoad() {
        super.viewDidLoad()
             
        
         let url = URL(string: "http://192.168.1.3/myproject/buyon/banner/Protoin.jpg")!
      let imageView2 =   newKenBurnsImageView(url: url)
        imageView2.frame = CGRect(x: 0, y: 250, width: 500, height: 200)
         imageView2.contentMode = .scaleAspectFit
         imageView2.backgroundColor = UIColor(hexString: "#00FF00")
         view.addSubview(imageView2)
    }


    func newKenBurnsImageView(image: UIImage) -> KenBurnsImageView {
        let ken = KenBurnsImageView()
        ken.setImage(image)
        ken.zoomIntensity = 1.5
        ken.setDuration(min: 5, max: 13)
        ken.startAnimating()
        return ken
    }
    
    func newKenBurnsImageView(url: URL) -> KenBurnsImageView {
        let ken = KenBurnsImageView()
        ken.fetchImage(url, placeholder: UIImage(named: "placeholder"))
        ken.startAnimating()
        return ken
    }
پاسخ به سوال 
Criss  7 سال پیش
0 0

من این کد رو تست کردم جواب گرفتم :


    override func viewDidLoad() {
        super.viewDidLoad()
             
        
         let url = URL(string: "http://192.168.1.3/myproject/buyon/banner/Protoin.jpg")!
      let imageView2 =   newKenBurnsImageView(url: url)
        imageView2.frame = CGRect(x: 0, y: 250, width: 500, height: 200)
         imageView2.contentMode = .scaleAspectFit
         imageView2.backgroundColor = UIColor(hexString: "#00FF00")
         view.addSubview(imageView2)
    }


    func newKenBurnsImageView(image: UIImage) -> KenBurnsImageView {
        let ken = KenBurnsImageView()
        ken.setImage(image)
        ken.zoomIntensity = 1.5
        ken.setDuration(min: 5, max: 13)
        ken.startAnimating()
        return ken
    }
    
    func newKenBurnsImageView(url: URL) -> KenBurnsImageView {
        let ken = KenBurnsImageView()
        ken.fetchImage(url, placeholder: UIImage(named: "placeholder"))
        ken.startAnimating()
        return ken
    }

در مورد UIColor

 public extension UIColor {
    convenience init(hex: Int, alpha: Double = 1.0) {
        self.init(red: CGFloat((hex>>16)&0xFF)/255.0, green: CGFloat((hex>>8)&0xFF)/255.0, blue: CGFloat((hex)&0xFF)/255.0, alpha: CGFloat(255 * alpha) / 255)
    }
    
    convenience init(hexString: String, alpha: Double = 1.0) {
        let hex = hexString.trimmingCharacters(in: CharacterSet.alphanumerics.inverted)
        var int = UInt32()
        Scanner(string: hex).scanHexInt32(&int)
        let r, g, b: UInt32
        switch hex.count {
        case 3: // RGB (12-bit)
            (r, g, b) = ((int >> 8) * 17, (int >> 4 & 0xF) * 17, (int & 0xF) * 17)
        case 6: // RGB (24-bit)
            (r, g, b) = (int >> 16, int >> 8 & 0xFF, int & 0xFF)
        default:
            (r, g, b) = (1, 1, 0)
        }
        self.init(red: CGFloat(r) / 255, green: CGFloat(g) / 255, blue: CGFloat(b) / 255, alpha: CGFloat(255 * alpha) / 255)
    }

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .