Aller au contenu


Photo

Slider


  • Please log in to reply
65 réponses à ce sujet

#41 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 22 juin 2017 - 16:31

SVP Savez-vous pourquoi j'ai ça sur un de mes projets ?

 

 

Fichier(s) joint(s)



#42 Céroce

Céroce

    Mouleur de chocolats

  • Contrôleur d'arômes
  • 5 206 messages
  • LocationSaint-Leu-d'Esserent / France

Posté 22 juin 2017 - 17:49

À mon avis:
L'affichage des CALayers est fait par Metal, donc ce sont des polygones 3D. Ce que tu observes, ce sont des triangles qui se croisent en "profondeur". Donc, je modifierais le positionnement sur l'axe z.

Essaie de modifier cette ligne:
t.m34 = 1.0 / -500
J'ai l'impression que le facteur -500 a été trouvé de manière empirique. Essaie
t.m34 = 1.0
ou -1.

Je n'ai pas le courage de vérifier le contenu m34 par cette chaleur.
RenaudPradenc.com Je suis développeur iOS & Mac indépendant.

#43 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 22 juin 2017 - 22:42

Justement, ce qui est étonnant c'est que le premier et le dernier de mes cell s'affiche parfaitement bien. Et le meme code fonctionne parfaitement sur un autre projet qui certes vide pour le moment

#44 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 22 juin 2017 - 22:44

À mon avis:
L'affichage des CALayers est fait par Metal, donc ce sont des polygones 3D. Ce que tu observes, ce sont des triangles qui se croisent en "profondeur". Donc, je modifierais le positionnement sur l'axe z.

Essaie de modifier cette ligne:

t.m34 = 1.0 / -500
J'ai l'impression que le facteur -500 a été trouvé de manière empirique. Essaie
t.m34 = 1.0
ou -1.

Je n'ai pas le courage de vérifier le contenu m34 par cette chaleur.

_______________

Looooool je vais tester ça dès ce soir



#45 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 23 juin 2017 - 09:40

Fonctionne pas malheureusement. 



#46 Céroce

Céroce

    Mouleur de chocolats

  • Contrôleur d'arômes
  • 5 206 messages
  • LocationSaint-Leu-d'Esserent / France

Posté 23 juin 2017 - 09:46

Pourrais-tu nous donner ce projet d'exemple où ça ne fonctionne pas ?
  • rollano aime ceci
RenaudPradenc.com Je suis développeur iOS & Mac indépendant.

#47 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 23 juin 2017 - 10:43

Pourrais-tu nous donner ce projet d'exemple où ça ne fonctionne pas ?

 

C'est une application deja publier sur laquelle je cherche à tester de nouvelle choses

 

 

####

 

Bon je m’excuse par avance pour les pub looooooool



#48 Joanna Carter

Joanna Carter

    Broyeur de fèves

  • Contrôleur d'arômes
  • 1 887 messages
  • LocationPlestin-les-Grèves (22)

Posté 23 juin 2017 - 12:43

 

Lien malformé


  • rollano aime ceci

#49 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 23 juin 2017 - 13:28

Lien malformé

 

 

Mes excuses ..... https://itunes.apple...88911?l=en&mt=8


  • rollano aime ceci

#50 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 23 juin 2017 - 13:31

 

Encore en phase de correction donc vraiment désoler pour les désagréments



#51 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 29 juin 2017 - 12:24

Salut tout le monde,

pour plus de precision, ci-joint une petite vidéo de demo :)

Fichier(s) joint(s)



#52 Draken

Draken

    Mouleur de chocolats

  • Artisan chocolatier
  • PipPipPipPipPipPipPipPip
  • 8 601 messages
  • LocationParis

Posté 29 juin 2017 - 12:48

T’aimes bien les warnings, on dirais ..

 

Oui, c’est typiquement un problème de profondeur. Les pixels dont la coordonnée z est en dessous de la coordonnée z du fond d’écran  sont affichés en-dessous !


  • rollano aime ceci

Garçon, servez-moi un Covfefe avec du lait de soja, sans OGM ..

Et faites régler la climatisation, il fait bien chaud, ici !

 

 

Éternel Novice !  :baby:

Tueur de poneys !  :(

 

Faire simple .. c'est compliqué !

Faire compliqué .. c'est simple !

 

Un MOOC (cours en ligne - dont je ne suis pas l'auteur) gratuit sur la programmation en Obj-C et en Swift 3, démarrant le 14 Mars 2017 :

https://www.edx.org/...onnex-progios1x

 

Des dizaines d'heures de tutoriels vidéo en français (je ne suis pas l'auteur) pour apprendre à développer en Obj-C et Swift : http://pagesperso-sy...don/5I452-2014/

 

 


#53 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 29 juin 2017 - 13:49

T’aimes bien les warnings, on dirais ..

 

Oui, c’est typiquement un problème de profondeur. Les pixels dont la coordonnée z est en dessous de la coordonnée z du fond d’écran  sont affichés en-dessous !

 

 

On dirais seulement looool ça pic les yeux


  • Joanna Carter aime ceci

#54 Draken

Draken

    Mouleur de chocolats

  • Artisan chocolatier
  • PipPipPipPipPipPipPipPip
  • 8 601 messages
  • LocationParis

Posté 29 juin 2017 - 14:02

C’est toujours casse-pieds de mélanger la 3D et la 2D pour ce genre de choses. As-tu vraiment besoin d’un effet 3D pour ton application ? Un simple effet de rotation n’est-il pas suffisant ?


  • rollano aime ceci

Garçon, servez-moi un Covfefe avec du lait de soja, sans OGM ..

Et faites régler la climatisation, il fait bien chaud, ici !

 

 

Éternel Novice !  :baby:

Tueur de poneys !  :(

 

Faire simple .. c'est compliqué !

Faire compliqué .. c'est simple !

 

Un MOOC (cours en ligne - dont je ne suis pas l'auteur) gratuit sur la programmation en Obj-C et en Swift 3, démarrant le 14 Mars 2017 :

https://www.edx.org/...onnex-progios1x

 

Des dizaines d'heures de tutoriels vidéo en français (je ne suis pas l'auteur) pour apprendre à développer en Obj-C et Swift : http://pagesperso-sy...don/5I452-2014/

 

 


#55 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 29 juin 2017 - 14:05

C’est toujours casse-pieds de mélanger la 3D et la 2D pour ce genre de choses. As-tu vraiment besoin d’un effet 3D pour ton application ? Un simple effet de rotation n’est-il pas suffisant ?

 

Non en effet, la présence de l'effet 3d dans l'appli IPoomsae n'est pas une obligation. Simplement, je trouvais cela plus sympa en vus du contenu un p trop barbant



#56 Céroce

Céroce

    Mouleur de chocolats

  • Contrôleur d'arômes
  • 5 206 messages
  • LocationSaint-Leu-d'Esserent / France

Posté 29 juin 2017 - 14:14

Pourrais-tu nous donner ce projet d'exemple où ça ne fonctionne pas ?

 

Je réitère: donne nous un projet d'exemple — DU CODE !!! — pour que nous puissions étudier ce qui ne va pas.

Pas nécessaire de nous fournir tout le projet.


  • rollano aime ceci
RenaudPradenc.com Je suis développeur iOS & Mac indépendant.

#57 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 29 juin 2017 - 15:06

Je réitère: donne nous un projet d'exemple — DU CODE !!! — pour que nous puissions étudier ce qui ne va pas.

Pas nécessaire de nous fournir tout le projet.

 

Pas de soucis je vous envoi ça de suite



#58 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 29 juin 2017 - 15:18

import UIKit
 
class EpreuveListViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource {
 
    
    
 
    @IBOutlet weak var epreuveListCollectionView: UICollectionView!
    
    
    
    // Les Array pour Collection View Pour les épreuves
    let epreuvesName = ["KIBON", "HANBON KYORUGI", "COMBAT : KYORUGI", "HO SHIN SOUL", "ARBITRAGE", "LA THEORIE", "LA BONIFICATION"]
    let epreuvesImageArr = [UIImage(named: "kibon"), UIImage(named: "hanbon"), UIImage(named: "combat"), UIImage(named: "back5"), UIImage(named: "arbitrage"), UIImage(named: "theorie"), UIImage(named: "back4"), UIImage(named: "Xback8"), UIImage(named: "Xback8")]
    
    // Les Array pour les subtitle des épreuves
    let epreuveSubTitleLabel = ["30 Points", "20 Points", "30 Points", "20 Points", "20 Points", "10 Points", "10 à 15 Points"]
    
    var myTransheadImageVar = ""
    
    var myTransBackgroungImageVar = ""
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // Do any additional setup after loading the view.
        
        
        DispatchQueue.global(qos: .userInteractive).async {
            
            //La fonction ou code prioritaire
            self.WSGetImage()
            
            
        }
        
        
        
        // Add a background view to the table view
        let backgroundImage = UIImage(named: "background")
        let imageView = UIImageView(image: backgroundImage)
        
        imageView.contentMode = UIViewContentMode.scaleAspectFit
        
        self.epreuveListCollectionView.backgroundView = imageView
        
        
    }
 
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
    
    
    
    //4 : Mark -  Definit le nombre de section
    func numberOfSections(in collectionView: UICollectionView) -> Int {
        return self.epreuvesName.count
    }
    
    //5 : Mark - definit le nombre de row par section
    func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        
        return 1//self.epreuvesName.count
        
    }
    
    
    
    func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
        
        
        let cell = epreuveListCollectionView.dequeueReusableCell(withReuseIdentifier: "epreuveCustumCell", for: indexPath) as! EpreuveListCollectionViewCell
        
        let indexSection = indexPath.section
        
        cell.layer.cornerRadius = 10
        cell.layer.borderColor = UIColor.black.cgColor
        cell.layer.borderWidth = 2
        
        cell.epreuveImageView.image = self.epreuvesImageArr[indexSection]
        
        cell.epreuveTitleLabel.text = self.epreuvesName[indexSection]
        
        cell.epreuveSubTitleLabel.text = self.epreuveSubTitleLabel[indexSection]
        
        return cell
    }
    
    
    func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
        
        switch (indexPath.section){
        case (0):
            performSegue(withIdentifier: "segueForEpreuve1", sender: self)
            break
        case (1):
            performSegue(withIdentifier: "segueForEpreuve2", sender: self)
            break
            case (2):
             performSegue(withIdentifier: "segueForEpreuve3", sender: self)
             break
             case (3):
             performSegue(withIdentifier: "segueForEpreuve4", sender: self)
             break
             case (4):
             performSegue(withIdentifier: "segueForEpreuve5", sender: self)
             break
             case (5):
             performSegue(withIdentifier: "segueForEpreuve6", sender: self)
             break
             case (6):
             performSegue(withIdentifier: "segueForEpreuve7", sender: self)
             break
             /*case (7):
             performSegue(withIdentifier: "segueForEpreuve8", sender: self)
             break*/
        default:
            print(indexPath.section)
            break
        }
        
        
        
    }
    
    
    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        
        if segue.identifier == "segueForEpreuve1"{
            
            let indexPaths = self.epreuveListCollectionView.indexPathsForSelectedItems!
            let indexPath = indexPaths[0] as IndexPath
            
            let vc = segue.destination as! KibonV0TableViewController
            
            
            vc.title = self.epreuvesName[indexPath.section]
            vc.image = self.epreuvesImageArr[indexPath.section]!
            
        }else if segue.identifier == "segueForEpreuve2"{
         
         let indexPaths = self.epreuveListCollectionView.indexPathsForSelectedItems!
         let indexPath = indexPaths[0] as IndexPath
         
         let vc = segue.destination as! HanbonV0TableViewController
            
            vc.title = self.epreuvesName[indexPath.section]
            vc.image = self.epreuvesImageArr[indexPath.section]!
         
         
         }else if segue.identifier == "segueForEpreuve3"{
         
         let indexPaths = self.epreuveListCollectionView.indexPathsForSelectedItems!
         let indexPath = indexPaths[0] as IndexPath
         
         let vc = segue.destination as! KyorugiV0TableViewController
         
         
         vc.title = self.epreuvesName[indexPath.section]
         vc.image = self.epreuvesImageArr[indexPath.section]!
            
        }else if segue.identifier == "segueForEpreuve4"{
            
            let indexPaths = self.epreuveListCollectionView.indexPathsForSelectedItems!
            let indexPath = indexPaths[0] as IndexPath
            
            let vc = segue.destination as! HoshinsoulV0TableViewController
            
            
            vc.title = self.epreuvesName[indexPath.section]
            vc.image = self.epreuvesImageArr[indexPath.section]!
            
        }else if segue.identifier == "segueForEpreuve5"{
            
            let indexPaths = self.epreuveListCollectionView.indexPathsForSelectedItems!
            let indexPath = indexPaths[0] as IndexPath
            
            let vc = segue.destination as! ArbitrageV0TableViewController
            
            
            vc.title = self.epreuvesName[indexPath.section]
            vc.image = self.epreuvesImageArr[indexPath.section]!
            
        }else if segue.identifier == "segueForEpreuve6"{
            
            let indexPaths = self.epreuveListCollectionView.indexPathsForSelectedItems!
            let indexPath = indexPaths[0] as IndexPath
            
            let vc = segue.destination as! TheorieV0TableViewController
            
            
            vc.title = self.epreuvesName[indexPath.section]
            vc.image = self.epreuvesImageArr[indexPath.section]!
            
        }else if segue.identifier == "segueForEpreuve7"{
            
            let indexPaths = self.epreuveListCollectionView.indexPathsForSelectedItems!
            let indexPath = indexPaths[0] as IndexPath
            
            let vc = segue.destination as! BonificationV0TableViewController
            
            
            vc.title = self.epreuvesName[indexPath.section]
            vc.image = self.epreuvesImageArr[indexPath.section]!
            
        }
 
    
    
    
    }
    
    
    
    //1 - JSON DATA
    private func WSGetImage() {
        
        JsonManager.shared.get(url: "http://site.com/theme.json") {(Result) in
            
            switch Result {
                
            case .error(let msg):
                print("Error : \(msg)")
                
            case .success(let json):
                print(json) // array of dictionary
                
                
                if let poomsaeInfos = json["theme"] as? [[String: AnyObject]] {
                    
                    for items in poomsaeInfos {
                        
                        
                        //background
                        /**********/
                        if let newItem3 = items["epreuveCollectionViewBackgroundImageUrl"] as? String {
                            
                            let variable3 = newItem3
                            
                            self.myTransBackgroungImageVar = variable3
                            
                            print("myTransBackgroungImageVar", self.myTransBackgroungImageVar)
                            
                            
                            /********/
                            
                            let url = URL(string: self.myTransBackgroungImageVar)
                            
                            if url == nil{
                                
                                // Add a background view to the table view
                                let backgroundImage = UIImage(named: "background")
                                let imageView = UIImageView(image: backgroundImage)
                                
                                imageView.contentMode = UIViewContentMode.scaleAspectFit
                                
                                self.epreuveListCollectionView.backgroundView = imageView
                                
                                
                                
                            }else{
                                do{
                                    
                                    let data = try? Data(contentsOf: url!)
                                    
                                    if data != nil{
                                        
                                        DispatchQueue.main.async(execute: {
                                            
                                            let image = UIImage(data: data!)
                                            
                                            let imageView = UIImageView(image: image)
                                            
                                            imageView.contentMode = UIViewContentMode.scaleAspectFit
                                            
                                            self.epreuveListCollectionView.backgroundView = imageView
                                            
                                        })
                                    }else {
                                        
                                        print("Pas de Data Rolland")
                                    }
                                    
                                }
                                
                            }//if else url nil
                        }
                        /**********/
                        
                    }
                    
                }
                
            }
        }//Switch in result
        
        
    }
 
}

  • rollano aime ceci

#59 Céroce

Céroce

    Mouleur de chocolats

  • Contrôleur d'arômes
  • 5 206 messages
  • LocationSaint-Leu-d'Esserent / France

Posté 29 juin 2017 - 15:23

Pourrais-tu plutôt nous donner un projet Xcode, qu'on puisse le faire tourner tout de suite et l'étudier au débogueur ?


  • rollano aime ceci
RenaudPradenc.com Je suis développeur iOS & Mac indépendant.

#60 rollano

rollano

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 221 messages

Posté 29 juin 2017 - 15:52

Pourrais-tu plutôt nous donner un projet Xcode, qu'on puisse le faire tourner tout de suite et l'étudier au débogueur ?

 

 

Ok je vais faire ça






0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)