App maken: ook jij kunt het leren!

 

de iOS Academie Forums

Forums - App-ontwikkeling - Swift en iOS: transform

David  David heeft nog geen Studiekaart. Klokje22 mei 2015, 19:22
Avatar
Avatar
Berichten:95


Hoi allemaal,

 

Ik heb het volgende probleem. ik maak via programma code een UIButton. deze UIButton krijgt plaatje op met text. en deze UIButton moet een heel klein beetje gedraaid zijn. het probleem is dat beetje draaien indien ik de button draai verdwijnd een groot stuk van het plaatje (of helemaal) waardoor de text er niet meer mooi op staat.

 

dit is mijn code:

//////////////////////////////////

 

import Foundation

import UIKit

 

class shareButton: UIButton{

    

    var  captureScreen: UIImage = {

    var window: UIWindow? = UIApplication.sharedApplication().keyWindow

    window = UIApplication.sharedApplication().windows[0] as? UIWindow

    UIGraphicsBeginImageContextWithOptions(window!.frame.size, window!.opaque, 0.0)

    window!.layer.renderInContext(UIGraphicsGetCurrentContext())

    let image = UIGraphicsGetImageFromCurrentImageContext()

    UIGraphicsEndImageContext()

    return image;

    }()

    

    

    init(y : CGFloat){

        super.init(frame: CGRect(x: 0, y: 0, width: UIApplication.sharedApplication().keyWindow!.rootViewController!.view.frame.size.width / 2, height: UIApplication.sharedApplication().keyWindow!.rootViewController!.view.frame.size.width / 10))

       

        self.setBackgroundImage(UIImage(named: "hout.png"), forState: UIControlState.Normal)

        self.setTitleColor(UIColor.whiteColor(), forState: UIControlState.Normal)

        self.setTitle("Delen", forState: UIControlState.Normal)

        self.titleLabel?.font = UIFont.systemFontOfSize(60)

        //self.transform = CGAffineTransformMakeRotation((1 / 4) * 3.14)

        self.addTarget(self, action: Selector("share:"), forControlEvents: UIControlEvents.TouchUpInside)

               UIButton.animateWithDuration(5, delay: 0, options: nil, animations: { () -> Void in

           self.frame.origin.y =  UIApplication.sharedApplication().keyWindow!.rootViewController!.view.frame.size.height

        }, completion:{ Finished in

        

            

        })

     

    }

 

    required init(coder aDecoder: NSCoder) {

        fatalError("init(coder:) has not been implemented")

    }

 

    func share(sender: Selector){

        let imagearray: [AnyObject] = [captureScreen, "ik heb hoeveelsterren sterren gehaald",  NSURL(string: "https://itunes.apple.com/us/app/id967009569")! ]

        let activityVC = UIActivityViewController(activityItems: imagearray, applicationActivities: nil)

        if let popoverController = activityVC.popoverPresentationController {

            activityVC.popoverPresentationController?.sourceView = superview

            activityVC.popoverPresentationController?.sourceRect = CGRect(x: superview!.frame.size.width / 2 - 150, y: superview!.frame.height , width: 300, height: 200)

        }

        UIApplication.sharedApplication().keyWindow?.rootViewController?.presentViewController(activityVC, animated: true, completion: nil)

    }

 

 

 

 

}

 

 

indien ik dus  self.transform = CGAffineTransformMakeRotation((1 / 4) * 3.14) weghaal krijg ik wel een mooie button te zien.

weet iemand hoe ik dit op kan lossen.

 

groetjes,

 

david

 

 

Reageer


AppChanger  Laurens heeft nog geen Studiekaart. Klokje22 mei 2015, 21:18
Avatar
Avatar
Berichten:301
Fans:13


Hallo David,

Is het niet mogelijk om je project even in een dropbox te plaatsen?

Met vriendelijke groeten,

Laurens

Reageer


David  David heeft nog geen Studiekaart. Klokje22 mei 2015, 21:57
Avatar
Avatar
Berichten:95


David  David heeft nog geen Studiekaart. Klokje22 mei 2015, 23:07
Avatar
Avatar
Berichten:95


ik heb de oplossing gevonden:

 

http://stackoverflow.com/questions/19837512/rotate-uiimage-and-move

 

 

ik snap niet wat er staat. maar het werkt nu wel.

 

groetjes,

 

david

Reageer

Goed advies! 1 persoon vindt dit goed advies.

AppChanger  Laurens heeft nog geen Studiekaart. Klokje23 mei 2015, 00:15
Avatar
Avatar
Berichten:301
Fans:13


Dag David,

Super dat je het gevonden hebt! Wat heb je dan juist veranderd?

Met vriendelijke groeten,

Laurens

Reageer

Leuk! 1 persoon vindt vindt dit leuk.

David  David heeft nog geen Studiekaart. Klokje23 mei 2015, 12:03
Avatar
Avatar
Berichten:95


hallo Appchanger,

 

In de animatie stond dit 

self.frame.orign.y = (eenywaarde)

 

En het word dit.

self.center.y = (eenywaarde + eigenhoogte / 2)

 

groetjes,

 

david

Reageer

Leuk! 1 persoon vindt vindt dit leuk.

AppChanger  Laurens heeft nog geen Studiekaart. Klokje23 mei 2015, 12:16
Avatar
Avatar
Berichten:301
Fans:13


Dag David,

Bedankt voor je reactie.

Met vriendelijke groeten,

Laurens

Reageer

Leuk! 1 persoon vindt vindt dit leuk.