IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement iOS Discussion :

récupérer une valeur d'une ligne selectionnée dans un tableview vers un textfield


Sujet :

Développement iOS

  1. #1
    Débutant  
    Inscrit en
    Décembre 2008
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 163
    Points : 41
    Points
    41
    Par défaut récupérer une valeur d'une ligne selectionnée dans un tableview vers un textfield
    Bonjour,


    SVP, je voudrais savoir comment je peux récupérer une donnée depuis une ligne sélectionnée dans un tableview pour l'afficher dans un textfield dans une deuxieme interface (le but c'est de modifier la valeur de la donnée dans la base)

    environnement de travail:

    xcode 4.3.3
    ios 7
    simulateur 5.1

    PS: j'utilise pas le story board et je travaille avec une base Mysql

    je vous remercie

  2. #2
    Membre habitué
    Homme Profil pro
    Etudiant
    Inscrit en
    Février 2010
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Février 2010
    Messages : 115
    Points : 139
    Points
    139
    Par défaut
    ca veut dire quoi "dans une deuxieme interface" ?

  3. #3
    Débutant  
    Inscrit en
    Décembre 2008
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 163
    Points : 41
    Points
    41
    Par défaut
    Citation Envoyé par Phago Voir le message
    ca veut dire quoi "dans une deuxieme interface" ?
    Bonjour Phago,

    interface 1: contient une tableview avec des données extraites depuis la base,

    interface 2: quand je selectionne un element dela tableview, les données d'une case de la tableview seront affichés dans une deuxieme interface dans des champs texte, pour pouvoir les modifier

  4. #4
    Membre habitué
    Homme Profil pro
    Etudiant
    Inscrit en
    Février 2010
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Février 2010
    Messages : 115
    Points : 139
    Points
    139
    Par défaut
    Ok, je vais supposer que interface = UIViewController

    En gros dans ta premiere interface tu as dû assigner un delegate et un datasource.
    en général, le delegate = self et le datasource peut être self ou une classe externe qui va gérer tes données sous la forme d'un tableau à une ou plusieurs dimension.

    Dans ta première interface tu dois déjà (re)définir la méthode didSelectRowAtIndexPath: qui va te permettre de récupérer la case que tu as cliqué (et donc normalement tu peux récupérer la description de ta cellule).

    Dans cette même méthode tu en profite pour afficher ta 2e interface. Si tu utilise les storyboards tu devrais pouvoir passer la description de la cellule à mettre dans le champ texte grâce aux Segues (notamment la méthode prepareForSegue

    Un bon tuto:
    https://developer.apple.com/legacy/l...roduction.html

  5. #5
    Débutant  
    Inscrit en
    Décembre 2008
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 163
    Points : 41
    Points
    41
    Par défaut
    Citation Envoyé par Phago Voir le message
    Ok, je vais supposer que interface = UIViewController

    En gros dans ta premiere interface tu as dû assigner un delegate et un datasource.
    en général, le delegate = self et le datasource peut être self ou une classe externe qui va gérer tes données sous la forme d'un tableau à une ou plusieurs dimension.

    Dans ta première interface tu dois déjà (re)définir la méthode didSelectRowAtIndexPath: qui va te permettre de récupérer la case que tu as cliqué (et donc normalement tu peux récupérer la description de ta cellule).

    Dans cette même méthode tu en profite pour afficher ta 2e interface. Si tu utilise les storyboards tu devrais pouvoir passer la description de la cellule à mettre dans le champ texte grâce aux Segues (notamment la méthode prepareForSegue

    Un bon tuto:
    https://developer.apple.com/legacy/l...roduction.html

    MERCI Phago,

    est-t-il possible de m'envoyer un exemple avec le code source (je n'utilise pas le storyboard).

    MERCIIIIII

  6. #6
    Membre habitué
    Homme Profil pro
    Etudiant
    Inscrit en
    Février 2010
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Février 2010
    Messages : 115
    Points : 139
    Points
    139
    Par défaut
    Citation Envoyé par thouraya24 Voir le message
    MERCI Phago,

    est-t-il possible de m'envoyer un exemple avec le code source (je n'utilise pas le storyboard).

    MERCIIIIII
    Malheureusement non, j'utilise quasi que les storyboards. Tu utilise quoi ? les xib ou tout en code ?
    Par contre si tu n'en a pas encore, c'est mieux de définir un NavigationController comme ça dans didSelectRowAtIndexPath: tu vas pouvoir faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SecondViewController *secondViewController = ... // tu créer ta 2e interface
    secondViewController.descriptionLabel = dataSource[indexPath.row]; // en supposant que ton datasource ne contient que les descriptions
    [self.navigationController pushViewController:secondViewController animated:YES];
    Tu arrives à quoi pour le moment niveau code ?

  7. #7
    Débutant  
    Inscrit en
    Décembre 2008
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 163
    Points : 41
    Points
    41
    Par défaut
    Citation Envoyé par Phago Voir le message
    Malheureusement non, j'utilise quasi que les storyboards. Tu utilise quoi ? les xib ou tout en code ?
    Par contre si tu n'en a pas encore, c'est mieux de définir un NavigationController comme ça dans didSelectRowAtIndexPath: tu vas pouvoir faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SecondViewController *secondViewController = ... // tu créer ta 2e interface
    secondViewController.descriptionLabel = dataSource[indexPath.row]; // en supposant que ton datasource ne contient que les descriptions
    [self.navigationController pushViewController:secondViewController animated:YES];
    Tu arrives à quoi pour le moment niveau code ?
    Bonjour Phago,

    toujours pas de solutions, voilà quelques imprimes ecrans qui mettent à nu la l'exception
    Nom : LIGNE D4EXEPTION.png
Affichages : 1607
Taille : 306,6 Ko

    Nom : JSON-PHP file .png
Affichages : 1353
Taille : 104,8 Ko


    Nom : unnamed.png
Affichages : 1489
Taille : 159,9 Ko

    MERCI Phago et à tous ceux qui peuvent m'aider

  8. #8
    Membre habitué
    Homme Profil pro
    Etudiant
    Inscrit en
    Février 2010
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Février 2010
    Messages : 115
    Points : 139
    Points
    139
    Par défaut
    euu effectivement ton instanciation du viewcontroller à l'air foireux

  9. #9
    Débutant  
    Inscrit en
    Décembre 2008
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 163
    Points : 41
    Points
    41
    Par défaut
    Citation Envoyé par Phago Voir le message
    euu effectivement ton instanciation du viewcontroller à l'air foireux
    Bonjour Phago,

    pouvez-vous me proposez une correction SVP

    MERCI

  10. #10
    Membre habitué
    Homme Profil pro
    Etudiant
    Inscrit en
    Février 2010
    Messages
    115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Etudiant

    Informations forums :
    Inscription : Février 2010
    Messages : 115
    Points : 139
    Points
    139
    Par défaut
    euuu avec un rapide coup d'oeil il y a plein de fautes sur cette meme ligne :
    modifiercamion *editform = [[[modifiercamion alloc] initWithNibName:nil bundle:nil] autorelease];

    1- modifiercamion est une classe, elle devrais s'apeller ModifierCamion
    2- tu l'init avec un nibName:nil, je suis quasi sur que editform = nil si regarde en mode debug. d'ou l'erreur a la ligne d'en dessous comme quoi tu envois un message non reconnu. Théoriquement cette méthode va instancier un .xib tu as créé avec IB
    3- que fait un autorelease ? Tu travailles sans ARC ?

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. [WD16] Récupérer la valeur d'une colonne d'une table d'une ligne précise
    Par elghers_hocine dans le forum WinDev
    Réponses: 16
    Dernier message: 06/05/2011, 18h11
  3. Réponses: 5
    Dernier message: 27/04/2010, 14h55
  4. Réponses: 6
    Dernier message: 31/07/2009, 17h49
  5. Récupérer la valeur d'une colonne de la ligne d'un DBGrid
    Par Oluha dans le forum Bases de données
    Réponses: 4
    Dernier message: 10/10/2005, 10h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo