Ios 我为什么从另一个视图控制器调用时,我的表视图为零?

Ios 我为什么从另一个视图控制器调用时,我的表视图为零?,ios,uitableview,swift,uilabel,iboutlet,Ios,Uitableview,Swift,Uilabel,Iboutlet,当用户通过将表视图中的标签设置为“ONLY MEMBER”注销时,我试图从左侧菜单(滑出)重新加载我的表视图控制器。因此,我调用了refreshAuctionLatestViewController.ViewWillDisplay(true)。但是,将在该方法中重新加载的表视图为零。有帮助吗 这是我的幻灯片菜单控制器(SlideMenu) 这是我的控制台输出,您将在下面看到nil PostData: &appid=9cdcf896d1f54c3c11b0d4839ce26775 Resp

当用户通过将表视图中的标签设置为“ONLY MEMBER”注销时,我试图从左侧菜单(滑出)重新加载我的表视图控制器。因此,我调用了refreshAuctionLatestViewController.ViewWillDisplay(true)。但是,将在该方法中重新加载的表视图为零。有帮助吗

这是我的幻灯片菜单控制器(SlideMenu)

这是我的控制台输出,您将在下面看到nil

PostData: &appid=9cdcf896d1f54c3c11b0d4839ce26775
Response ==> {"status":"authorized"}
Status:
Already Sign In
Auction Latest : viewDidLoad
Auction Latest : ViewWillAppear
task completed
Optional(<UITableView: 0x7faa9c852000; framet a=s k( 0c o0m;p l3e2t0e d5
68); clipsToBounds = YES; hidden = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7faa9bda1f00>; layer = <CALayer: 0x7faa9bd9e750>; contentOffset: {0, -64}; contentSize: {320, 0}>)
Optional(<UITableView: 0x7faa9c852000; frame = (0 0; 320 568); clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7faa9bda1f00>; layer = <CALayer: 0x7faa9bd9e750>; contentOffset: {0, -64}; contentSize: {320, 91}>)
Auction Latest : ViewWillAppear
task completed
Optional(<UITableView: 0x7faa9c852000; frame = (0 0; 320 568); clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7faa9bda1f00>; layer = <CALayer: 0x7faa9bd9e750>; contentOffset: {0, -64}; contentSize: {320, 91}>)
Auction Latest : ViewWillAppear
task completed
Optional(<UITableView: 0x7faa9c852000; frame = (0 0; 320 568); clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7faa9bda1f00>; layer = <CALayer: 0x7faa9bd9e750>; contentOffset: {0, -64}; contentSize: {320, 91}>)
PostData: &email=example.test@gmail.com&appid=9cdcf896d1f54c3c11b0d4839ce26775
Response code: 200
Response ==> {"status":"ok"}
Status:
Error:
Log Out SUCCESS
Auction Latest : ViewWillAppear
task completed
nil
PostData:&appid=9cdcf896d1f54c3c11b0d4839ce26775
响应==>{“状态”:“已授权”}
地位:
已经登录
最新拍卖:viewDidLoad
最新拍卖:ViewWill出现
任务完成
可选()
可选()
最新拍卖:ViewWill出现
任务完成
可选()
最新拍卖:ViewWill出现
任务完成
可选()
PostData:&email=示例。test@gmail.com&appid=9cdcf896d1f54c3c11b0d4839ce26775
响应代码:200
响应==>{“状态”:“确定”}
地位:
错误:
注销成功
最新拍卖:ViewWill出现
任务完成
无

有什么想法?有什么建议吗?我为我的问题留下了评论。希望这有助于更新该菜单,您必须调用使用该表视图的类的方法,为此,您需要做一件事, 将该类的对象创建到要更新的其他类中,然后通过该调用创建该类的方法,如

[幻灯片视图将显示:是]

这里silderpage是菜单页的一个对象


我希望这对你完全有帮助……

嗯,如果你不介意的话,请用swift解释,因为我不知道你说了什么。从你的解释来看,我用AuctionLatestViewController初始化了ActionLatestController和AuctionLatestViewController(见左菜单控制器顶部)。我这样调用了view controller类当用户点击“注销”时,在左侧菜单控制器上显示“self.refreshActionLatestController?.viewwillbeen(true)”。因此,这也不能解决问题。我更新了代码抱歉,我不太了解swift
import UIKit

class AuctionLatestViewController: UIViewController,UITableViewDataSource,UITableViewDelegate,AuctionAPIProtocol{

@IBOutlet var carTableView : UITableView?
@IBOutlet var carTableIndicator : UIActivityIndicatorView?
@IBOutlet var retryButton:UIButton?

var latestCars = [AuctionModel]()
var api : AuctionAPI?
var imageCache = [String : UIImage]()
var token : String = " "
var lotId : String = " "
var page : String = " "

override func viewDidLoad() {
    println("Auction Latest : viewDidLoad")
    super.viewDidLoad()
    self.setNavigationBarItem()
    self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: .Plain, target: nil, action: nil)

    carTableView?.hidden = true
    retryButton?.hidden=true
    carTableIndicator?.center
    carTableIndicator?.startAnimating()

    if TegKeychain.get("userToken_keyChain") == nil{
        token = "null"
    }
    else{
        token = TegKeychain.get("userToken_keyChain")!
    }
    lotId = "1"
    page = "1"

    api = AuctionAPI(delegate: self)
    api!.searchAuctionLatestFor(token,lotId: lotId,page: page)
}

override func viewWillAppear(animated: Bool) {
    println("Auction Latest : ViewWillAppear")

    super.viewWillAppear(animated)
    self.setNavigationBarItem()
    if TegKeychain.get("userToken_keyChain") == nil{
        token = "null"
    }
    else{
        token = TegKeychain.get("userToken_keyChain")!
    }
    lotId = "1"
    page = "1"
    api = AuctionAPI(delegate: self)
    api!.searchAuctionLatestFor(token,lotId: lotId,page: page)
}

//Table View DataSource and Delegate

// Implementing the json results from api.
func didReceiveAPIResults(results: NSDictionary) {
    var resultsArr: NSArray = results["body"] as NSArray //fix
    dispatch_async(dispatch_get_main_queue(), {
        self.latestCars = AuctionModel.latestWithJSON(resultsArr)
        println(self.carTableView)

        self.carTableView?.reloadData() // I reload the table view
        println(self.carTableView)// which return nil when i called from Slide Menu Controller.But return data,if the main view controller called.

        self.retryButton?.hidden=true
        self.retryButton?.enabled=false
        self.carTableIndicator?.stopAnimating()
        self.carTableView?.hidden = false
    })
}

// The function that i call from slide menu when log out
func searchForResults(search:Bool){
    println("Search Again")

    retryButton?.enabled=false
    retryButton?.hidden=true
    carTableIndicator?.startAnimating()
    api = AuctionAPI(delegate: self)

    if TegKeychain.get("userToken_keyChain") == nil{
        token = "null"
    }
    else{
        token = TegKeychain.get("userToken_keyChain")!
    }
    lotId = "1"
    page = "1"

    api = AuctionAPI(delegate: self)
    api!.searchAuctionLatestFor(token,lotId: lotId,page: page)
    //it will go to didReceiveAPIResults() method
}
PostData: &appid=9cdcf896d1f54c3c11b0d4839ce26775
Response ==> {"status":"authorized"}
Status:
Already Sign In
Auction Latest : viewDidLoad
Auction Latest : ViewWillAppear
task completed
Optional(<UITableView: 0x7faa9c852000; framet a=s k( 0c o0m;p l3e2t0e d5
68); clipsToBounds = YES; hidden = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7faa9bda1f00>; layer = <CALayer: 0x7faa9bd9e750>; contentOffset: {0, -64}; contentSize: {320, 0}>)
Optional(<UITableView: 0x7faa9c852000; frame = (0 0; 320 568); clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7faa9bda1f00>; layer = <CALayer: 0x7faa9bd9e750>; contentOffset: {0, -64}; contentSize: {320, 91}>)
Auction Latest : ViewWillAppear
task completed
Optional(<UITableView: 0x7faa9c852000; frame = (0 0; 320 568); clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7faa9bda1f00>; layer = <CALayer: 0x7faa9bd9e750>; contentOffset: {0, -64}; contentSize: {320, 91}>)
Auction Latest : ViewWillAppear
task completed
Optional(<UITableView: 0x7faa9c852000; frame = (0 0; 320 568); clipsToBounds = YES; autoresize = RM+BM; gestureRecognizers = <NSArray: 0x7faa9bda1f00>; layer = <CALayer: 0x7faa9bd9e750>; contentOffset: {0, -64}; contentSize: {320, 91}>)
PostData: &email=example.test@gmail.com&appid=9cdcf896d1f54c3c11b0d4839ce26775
Response code: 200
Response ==> {"status":"ok"}
Status:
Error:
Log Out SUCCESS
Auction Latest : ViewWillAppear
task completed
nil