Comment ajouter un bouton dans une cellule personnalisée ?

Raunak Trikha

Je crée une cellule personnalisée à partir d'un XIBfichier et je l'implémente dans mon tableView, je peux implémenter le texte de la cellule personnalisée, mais comment puis-je implémenter la même chose pour le bouton et recevoir des touches dessus ?

Voici le code que j'ai écrit :

struct cellData {

let cell : Int!
let text : String!
let button =  UIButton()
}

var arrayOfData = [cellData]()

override func viewDidLoad() {
    super.viewDidLoad()

arrayOfData = [cellData(cell : 1, text: "ahfhasdf", button: button)]
 }

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    if arrayOfData[indexPath.row].cell==1{

        let cell=Bundle.main.loadNibNamed("CustomTableViewCell1", owner: self, options: nil)?.first as! CustomTableViewCell1

        cell.label1.text=arrayOfData[indexPath.row].text
        cell.pillImage.currentImage=arrayOfData[indexPath].pillImage

        return cell
}

Mon pillest le bouton dans CustomTableViewCell1lequel je veux dans ma cellule et comment avoir des actions lorsque le bouton est enfoncé ? S'il vous plaît aider.

Matic Oblak

C'est loin de ce que vous demandez dans votre question, mais je pense que vous cherchez quelque chose comme ça. J'espère que le code et les commentaires parlent d'eux-mêmes.

// My cell from xib (storyboard)
class MyTableViewCell: UITableViewCell {

    @IBOutlet weak var button: UIButton!
    @IBOutlet weak var cellImageView: UIImageView!
    @IBOutlet weak var label: UILabel!

}

// My view controlle from xib (storyboard)
class MyViewController: UIViewController {

    @IBOutlet weak var tableView: UITableView!

    fileprivate var dataSource: [CellData] = [CellData]()

    override func viewDidLoad() {
        super.viewDidLoad()

        dataSource = [CellData(index: 0, title: "First cell", image: nil, target: self, selector: #selector(firstCellPressed)),
                      CellData(index: 1, title: "Another cell", image: nil, target: self, selector: #selector(anyOtherCellPressed))]
        tableView.reloadData()
    }

    @objc private func firstCellPressed() {
        print("First cell pressed")
    }

    @objc private func anyOtherCellPressed(sender: UIButton) {
        print("Cell at row \(sender.tag) pressed")
    }

}

fileprivate extension MyViewController {

    struct CellData {
        let index: Int
        let title: String?
        let image: UIImage?
        let target: Any?
        let selector: Selector
    }

}

extension MyViewController: UITableViewDataSource {

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "myCellIdentifier", for: indexPath) as! MyTableViewCell // Dequeue cell
        let source = dataSource[indexPath.row] // Get the source object
        cell.button.tag = indexPath.row // Assign tag so we can use it in the button action method

        // Assign target and selector if it exists
        if let target = source.target {
            cell.button.addTarget(target, action: source.selector, for: .touchUpInside)
        }
        cell.cellImageView.image = source.image // Assign image
        cell.label.text = source.title // Assign title
        return cell
    }

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return dataSource.count
    }

}

C'est quand même loin de ce que je ferais mais n'hésitez pas à expérimenter.

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

Comment ajouter un bouton personnalisé à l'intérieur d'une cellule dans Handsontable?

Comment ajouter un bouton d'action à une cellule XIB personnalisée?

Comment ajouter une classe personnalisée sur un bouton personnalisé dans TinyMCE 4 addButton ()

Comment ajouter un bouton à l'intérieur d'une cellule dans la grille DevExtreme React?

ajouter une DataGridViewColumn personnalisée avec une étiquette et un bouton par cellule

Comment ajouter un bouton à une cellule de vue de collection

Comment ajouter un bouton « ok » dans une entrée HTML ?

Comment ajouter une vue d'image personnalisée dans une cellule tableview dans Swift?

Passer les données d'un bouton dans une cellule personnalisée réutilisée

Comment ajouter du texte personnalisé à une cellule en fonction d'une entrée spécifique dans une cellule différente?

Utilisation du bouton dans une cellule personnalisée d'un autre ViewController

Comment actualiser "= NOW ()" dans une cellule via un bouton Activex?

Comment ajouter une autorisation personnalisée à un groupe dans Django?

Comment ajouter une image personnalisée à un pageIndicator dans Swift?

Comment ajouter un bouton à une seule rangée dans une TableView une colonne?

Comment ajouter un lien hypertexte vers une cellule dans axlsx?

Comment garder cohérent le comportement d'un bouton d'arrêt d'enregistrement / d'enregistrement dans une cellule personnalisée en Swift ?

Effectuer une séquence à l'aide d'un bouton dans une cellule personnalisée et en passant un objet

Comment ajouter une vue personnalisée en cliquant sur un bouton Xamarin

Comment ajouter un identifiant dans une ligne si une cellule de cette ligne est modifiée dans Excel?

Comment ajouter une cellule à ma vue tableau de manière dynamique à l'aide d'un bouton

Swift iOS - Comment ajouter un bouton à l'extérieur d'une cellule CollectionView

Comment ajouter une bordure au texte dans un bouton?

Comment ajouter une ombre autour d'un bouton dans Flutter?

Comment ajouter un bouton sous une liste dans SwiftUI ?

Comment ajouter une bordure dans un bouton d'action flottant

Comment ajouter un bouton de suppression à la cellule de vue de collection dans Swift?

Comment ajouter automatiquement un nouveau bouton à chaque fois qu'une fonction est appelée dans Swift?

Comment accéder au contenu d'une cellule personnalisée dans Swift à l'aide de la balise de bouton?

TOP liste

  1. 1

    Comment changer le navigateur par défaut en Microsoft Edge pour Jupyter Notebook sous Windows 10 ?

  2. 2

    Enregistrer le chemin de l'image de la galerie vers la base de données de la salle et l'afficher dans la liste des recycleurs

  3. 3

    Microsoft.WebApplication.targets

  4. 4

    knn classification 10 plis de l'outil et du tri

  5. 5

    Quelle est la relation entre le modèle et le tableau ? C'est compliqué

  6. 6

    Créer un système Buzzer à l'aide de python

  7. 7

    Fonction de puissance en Java

  8. 8

    opérations en virgule flottante dans go

  9. 9

    Comment définir la couleur de l'intersection dans un diagramme de Venn?

  10. 10

    Spring @RequestParam DateTime format comme ISO 8601 Date Heure facultative

  11. 11

    comment supprimer "compte de connexion google" à des fins de développement - actions sur google

  12. 12

    AutoMapper.Collection.EFCore - Erreur générée lors de la configuration

  13. 13

    Je continue à obtenir l'objet 'WSGIRequest' n'a pas d'attribut 'Get' sur django

  14. 14

    Comment remplir les valeurs manquantes avec plusieurs colonnes dans R

  15. 15

    Comment puis-je ajouter un UIView sous mon contrôleur de barre d'onglets par programme?

  16. 16

    Yat-il un référentiel maven application Java à démarrer rapidement 11

  17. 17

    Comment rechercher des éléments dans une ArrayList? - Java

  18. 18

    Comment utiliser HttpClient avec TOUT cert ssl, quelle que soit la « mauvaise » est

  19. 19

    Comment créer un bot à compte à rebours dans Discord en utilisant Python

  20. 20

    Sélectionnez le bouton radio sur la saisie de texte

  21. 21

    Placez le modeBar en haut au centre à l'aide de plotly.js

chaudétiquette

Archive