0

my table has 03 sections, 1) has no row, 2) has no row 3) has 04 segcons. when segcon changed then the data changes then reload the section 03. the issue is when the data is not fill the screen then the table moves down automatically. what i want is, the table will not move down automatically eventhough the data is not enough to fill the screen.

i try to use the footer but no help

self.tableView.tableFooterView = UIView()

see here for more detail https://youtu.be/40IqAh42nxM

media segcon

                let mediaCell: MediaCell = tableView.dequeueReusableCell(withIdentifier: "mediaCell", for: indexPath) as! MediaCell

            mediaCell.showImage(url: self.photoNsurlArray[indexPath.row]!)

            mediaCell.reportButtonProgram.addTarget(self, action: #selector(self.funcToHandleReportButton), for: .touchUpInside)

            let timestampe = funcConvertEpocTimeToDate(timeData: self.timestampsGlobal, atIndex: indexPath.row)

            mediaCell.timestampLabel.text = "\(timestampe)"

            let uid = self.uidkeys[indexPath.row]!
            Utils.getUserDetail(uid: uid) { (user) in

                let displayName = user?[Constants.User.display_name] as? String
                if let name = displayName,!(displayName?.isEmpty)! {
                    mediaCell.timestampLabel.text = "by " + "\(name) on " + "\(timestampe)"
                }
                print("getUserDetail display name: ", displayName)
            }
            returnCell = mediaCell

near segcon

let locationcell: LocationCellDesign = tableView.dequeueReusableCell(withIdentifier: "locationCellDesign", for: indexPath) as! LocationCellDesign

            let elementOfLocations = self.nearlocations[indexPath.row]!
            print("***elementOfLocations \(String(describing: elementOfLocations))")
            let locationDescriptionText = "\(String(describing: elementOfLocations["description"]!))"
            if locationDescriptionText.characters.count != 0 {
                locationcell.descriptionLabel.text = locationDescriptionText

            } else {
                locationcell.descriptionLabel.text = "No Description"

            }
            locationcell.address.text = "\(String(describing: elementOfLocations["address"]!))"
            let ownerID = "\(String(describing: elementOfLocations["owner"]!))"
            if ownerID == "ApperSystem" {
                locationcell.owner.text = "Owner: " + "ApperSystem"
            } else {
                Utils.getOwnerDetail(uid: ownerID) { (user) -> Void in
                    let userProperties = user!
                    let userDisplayName = userProperties["displayName"] as! String
                    locationcell.owner.text = "Owner: " + userDisplayName
                }
            }
            let userArray = elementOfLocations["users"]! as! [String]
            locationcell.users.text = "Users: " + "\(String(describing: userArray.count))"

            locationcell.nearLocationAvatarImageView.image = UIImage(named: "no-image")

            if elementOfLocations[Constants.LocationDataFields.media_urls] != nil {
                let avatarForLocation = elementOfLocations[Constants.LocationDataFields.media_urls] as! NSDictionary
                let numberOfPitureInLocation = avatarForLocation.allKeys(for: 1).sorted { ($0 as! String) < ($1 as! String) }
                if numberOfPitureInLocation.count > 0 {
                    Utils.loadImageFromFireBase(key: numberOfPitureInLocation.last! as! String) { (string) -> Void in
                        print("***loadImageFromFireBase string: \(String(describing: string))")
                        if let imageUrlString = string, !(string?.isEmpty)! {
                            let imageUrl:NSURL = NSURL(string: imageUrlString)!
                            locationcell.nearLocationAvatarImageView.sd_setImage(with: imageUrl as URL)
                        } else {
                            print("***loadImageFromFireBase mediaKey has no mediaUrl")
                        }
                    }
                }
            }
            returnCell = locationcell
coders
  • 2,287
  • 1
  • 12
  • 20

0 Answers0