2017-12-02 1 views
0

현재 UITableViewCell에 축소판이 표시되고 셀을 가볍게 두드리면 이미지를 닫고 tableView를 표시하기 위해 오른쪽 상단에 X/X 버튼이있는 이미지가 포 그라운드로 표시됩니다. didSelectRow에 다음 코드가 있습니다.tableViewCell을 탭하면 UIImageView를 전경으로 가져 오는 방법은 무엇입니까?

let hoverImage = UIImageView() 
    hoverImage.image = UIImage(named: "splashpt") 
    hoverImage.contentMode = .scaleAspectFit 
    self.view.addSubview(hoverImage) 
    hoverImage.center = self.view.center 
    hoverImage.layer.zPosition = 5 
    self.view.bringSubview(toFront: hoverImage) 

여전히 이미지가 표시되지 않습니다. 코드의이 부분을 디버깅하고 단계별로 수행 할 수 있기 때문에 계산이이 코드 섹션에 적용됩니다. 그러나 아무것도 화면에 나타납니다. 나는 zPositionbringSubview(toFront:)을 사용하고 있으며 어느 것도 내 요구 사항에 맞지 않습니다. 어떤 도움이라도 대단히 감사하겠습니다. 고맙습니다.

+0

당신은 프레임을 설정, 이미지 뷰의 프레임을 설정하고 시도하지 않았다

import UIKit class ViewController: UITableViewController { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } override func numberOfSectionsInTableView(tableView: UITableView) -> Int { return 1 } override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return 5 } override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell:UITableViewCell = self.tableView.dequeueReusableCellWithIdentifier("cell")! as UITableViewCell cell.textLabel?.text = "Happy" return cell } override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { print("Cell\(indexPath.row) is selected") let storyBoard = UIStoryboard(name: "Main", bundle: nil) let popoverVC = storyBoard.instantiateViewControllerWithIdentifier("PopViewController") as! PopViewController popoverVC.delegate = parentViewController as? InfoViewDelegate let nav = UINavigationController(rootViewController: popoverVC) nav.modalPresentationStyle = UIModalPresentationStyle.Popover nav.navigationBar.hidden = true self.presentViewController(nav, animated: true) { } popoverVC.passingViewController = self } } 

는 PopUpViewController이다. –

+1

@as diu 테이블보기에서 이미지를 팝업으로 표시하겠습니까? – Niroj

+0

@Niroj 예, 핀치 줌으로 이미지를 팝업하고 이미지를 닫으려면 x 버튼을 원합니다. 그것이 내가 성취하려고하는 것입니다. –

답변

1

이것은 데모 테이블 뷰입니다. 테이블 뷰 셀을 탭하면 뷰에 닫기 버튼이 표시됩니다. 닫기 버튼을 누르면 팝업보기가 닫힙니다.

import UIKit 
protocol InfoViewDelegate: class 
{ 
func infoViewClicked(tag: Int) 
} 

class PopViewController :UIViewController 
{ 

@IBOutlet weak var btnClose: UIButton! 
var delegate = InfoViewDelegate?() 
var passingViewController: UIViewController! 
override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view. 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

override func viewWillAppear(animated: Bool) { 
} 

override func viewDidDisappear(animated: Bool) { 
    self.presentingViewController?.dismissViewControllerAnimated(true 
     , completion: { 
    }) 
} 
/* 
// MARK: - Navigation 

// In a storyboard-based application, you will often want to do a little preparation before navigation 
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 
// Get the new view controller using segue.destinationViewController. 
// Pass the selected object to the new view controller. 
} 
*/ 
@IBAction func btnClicked(sender: UIButton) { 
    if(sender == self.btnClose) 
    { 
     self.delegate?.infoViewClicked(1) 
     self.presentingViewController?.dismissViewControllerAnimated(true 
      , completion: { 
     }) 
    } 

} 

} 

A table view

A simple view for Image

+0

이 답변은 제가 찾고있는 것에 완벽하게 작동했습니다. 감사합니다 @ Niroj –

+0

문제 :) :) ... – Niroj

+0

당신은 더 많은 시야를 위해 질문에 투표 할 수 있습니까? 감사합니다 @ Niroj –

관련 문제