ios


Segue to chat viewcontroller


I have included images to hopefully make this easier to understand. My FirstViewController has a collection view with a list of users from my firebase database.When I click on the users I am segued to a DetailedViewController that has more information about the user that was clicked. Within that viewController, the goal is to click on the compose button and segue to a viewController that allows me to chat with the user, whose profile I clicked on.
I have gotten as far as this for segueing from DetailedViewController to Message user 1.
#IBAction func SendMessage(_ sender: Any) {
performSegue(withIdentifier: "chat", sender: self)
}
I am not sure how to make sure I am sending the particular user I click on a message.
This is how I am passing data from FirstViewController to DetailedViewController.
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "details" {
if let indexPaths = self.CollectionView!.indexPathsForSelectedItems{
let vc = segue.destination as! BookDetailsViewController
let cell = sender as! UICollectionViewCell
let indexPath = self.CollectionView!.indexPath(for: cell)
let post = self.posts[(indexPath?.row)!] as! [String: AnyObject]
let Booked = post["title"] as? String
vc.Booked = Booked
print(indexPath?.row)
} }
One route to take is in your DetailViewController class, or whatever class you have implementing "performSegue(withIdentifier:, sender:)", add this:
override public func prepare(for segue: UIStoryboardSegue, sender: Any?) {
guard segue.identifier == "chat", let dest = segue.destination as? ChatViewController else {
return
}
dest.person = self.person
}
I don't know how you have the person's properties declared but if person is an object, do what I have above, if the it's individual properties, do
dest.name = self.name
dest.number = self.number //etc
prepare(for segue:, sender:) allows you to intercept any segue from that class and set up any variable need before the performSegue(...) executes. Make sure you identify the segue in some way otherwise the code will execute on all segues implemented in the class. In my example I used your segue's identifier.

Related Links

Gap between uiviews when view.addSubview - Swift
sqlite database for custom keyboard - ios
Access another view controller's property after an event
Performance and Memory wise is JPG or PNG better for Core Image?
UITableviewCell row and header are two different array
Not receiving production notifications
Create a graph with a Midi File
swift3 present from appdelegate error : Warning: Attemp to present ~ whose view is not in the window hierarchy
Bottom Corners are not working in swift
Can't use Swift in WatchKit extension
How to access and store photo after calling capturePhoto(with:delegate:)
Passing JSON Response From HTTP Request to Another ViewController in Swift 3
CompletionHandler for Alamofire
iOS open sco tx please
Firebase Google Ads not Display after change package name
Firebase Swift equivalent of push()

Categories

HOME
opencv
unit-testing
bootstrap-4
tags
android-sqlite
middleware
cql3
prometheus
xquery
tsql
android-sms
intel-xdk
delphi-xe7
google-adwords
phpmailer
w3.css
calabash-android
records
teraterm
gitlab-ci-runner
freetype
ssms-2014
liferay-aui
abstract-syntax-tree
typemock-isolator
rrd
android-button
meanjs
android-arrayadapter
launchpad
true-type-fonts
mobile-center
gecko
directx-12
stomp
blockui
querydsl
fipy
jdom-2
xaf
transpose
rft
uitabbarcontroller
subscription
btle
mergesort
hydra
mobile-browser
arm7
android-gps
fido
jawr
flying-saucer
mysql-error-1050
jeditorpane
cabal-install
cglib
4d
geneos
jstorm
blpapi
ane
materialdrawer
protected
react-rails
alienvault
mkpolyline
vraptor
adserver
slick2d
bit.ly
opensc
symfony-2.5
notifydatasetchanged
image-scaling
nitrogen
short
fig
serverside-javascript
antisamy
inputview
blueprint
angularjs-module
sizzle
dependency-walker
dynamic-usercontrols
alternate-data-stream
applaud
molehill
cellphone
ember-router
azure-role-environment
mdi
duplicate-data
facebook-authentication
bubble-popup
jtemplates
android-searchmanager
jboss-cache
68hc11

Resources

Mobile Apps Dev
Database Users
javascript
java
csharp
php
android
MS Developer
developer works
python
ios
c
html
jquery
RDBMS discuss
Cloud Virtualization
Database Dev&Adm
javascript
java
csharp
php
python
android
jquery
ruby
ios
html
Mobile App
Mobile App
Mobile App