を使用することができ、あなたが仲間に何ができるかです:)
問題:あなたは、ウィンドウにビューを追加すると 1.それは防ぎ、すべてのユーザーとの対話の受け付けを開始しますこのような相互作用を得るには、その下に表示します。したがって、tableViewの上にビューをロードして、このビューの下にあるセルをタップしようとすると、このようなタッチを受け取ることはありません:)
- UITableViewはビュー示されている:
いや、それはのUITableViewはまだ非常に多くのユーザー対話的であっても、それはすべてのタッチを受けることはありませんので、それは基本的に自分のタッチのいずれにも反応しません:)ません:)
どうすればテストできますか?
シンプルセットCGRect(0,0,self.tableView.frame.size.width,100)
にごCommunicationViewのフレームとCommunicationViewによって覆われていないテーブルビューの枠をタッチすることでテーブルビューをスクロールしようと、それはまだ私はちょうど今、なぜ同じ:)
をテストした私を信じて:)スクロールそれは私の場合にはうまくいかないのですか?
私が考えることのできる唯一の可能性は、CommunicationViewが画面全体をカバーしている可能性があることです。あなたのcommunicationViewに背景色を設定し、画面全体をカバーしているかどうかチェックしてみてください:)
しかし、その上にビューがある場合、私は決してtableViewと対話できませんか?
絶対にあなたが
:)をすることができますが、ユーザーが正確にあなたのCommunicationView下にあるセルをタップすることを可能にするとします:)どのようにそれを行うことができます?ここで
はこれがどのように:)
必要なのは、UIViewのhitTestの方法:)
である私のTestViewに呼ばれるビューを作成し、フレームでself.view.windowしそれを追加していdidSelectRowAtIndexPath
を(0,0、幅、200)
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let testView : MyView = NSBundle.mainBundle().loadNibNamed("MyView", owner: nil, options: nil)[0] as! MyView
testView.frame = CGRect(x: 0, y: 0, width: self.view.frame.size.width, height: 200)
testView.backgroundColor = UIColor.redColor()
testView.belowTableView = self.tableView
self.view.window?.addSubview(testView)
}
今私のTestViewには、セルの数カバーしていますが、私は同様にそれらをタップします:)
ここではどのようなIジd。コールMYVIEWをすることができます:)
class MyView : UIView {
var belowTableView : UITableView?
override func hitTest(point: CGPoint, withEvent event: UIEvent?) -> UIView? {
let hitView = super.hitTest(point, withEvent: event)
return self.belowTableView
}
}
これは私のTestViewにクラスとして設定されます:)あなたは
一体何をやっているのUIViewのサブクラスを作成します?私がタップされるビューを返却する責任があるHitTestメソッドをオーバーライドしています :)それでは、ここでやっていることは、私はその下のtableViewを返す私の自己を返すというし、私のTestViewに上のタッチをキャプチャしていている:)
だから、私のIOSは、ユーザーがタップ/ tableViewに触れて、上にあるtestViewではないと信じるでしょう:)
私はどのようにボタンをタップしますか? シンプルなタッチポイントは、それがボタン内にある場合は、単に他に、上記のコードで計算hitView私はself.belowTableViewを返す:)
簡単ではありません返す:)ボタンの枠内にあるかどうHitTestメソッドがチェック:)修正それは:)あなたがまだ疑問を持っている場合、Lemmeは知っている:)
あなたが達成しようとしているのは、ビューがそれの上に置かれているときにテーブルビューと対話することができますか?どうしてそうするか ???とにかくあなたがそれを達成したいならば絶対に可能です:)あなたはもう少しあなたの必要性を説明してください: –
@ SandeepBhandari-私は編集を追加しました。 – TKutal
@TKutalあなたは私のソリューションを試してみませんか? –