2017-10-11 18 views
0

私は次の階層を持っています。ボタンアクションが検出されない

1. UITableView 
- In cell 
2. UITableView 
- In cell 
3. UIButton 

ボタンの操作は検出されません。私はそれがネストされた接触のためだと思う。

@IBActionでアクションを検出するにはどうすればよいですか?代わりに、使用の

+0

両方のテーブルビューコードのdidSelectを表示 –

+0

私は 'didSelect'で何も検出しません。だから実装されていません。 – Lazy

+0

あなたのデータソースコードを表示 –

答えて

0

@IBActionあなたもreturn cell

cell.myButton.addTarget(self, action: #selector(ClassName.FunctionName(_:)), for: .touchUpInside) 

そして、あなたの関連するクラスのFunctionNameメソッドを定義する前に、あなたのcellForRowAtIndexPathメソッドのコードの下に入れて

以下のようなあなたのボタンにターゲットに手動で設定することができます。

0

ああ、私はそれを持っています。ボタンを含むサブビュー(他のコントロールと一緒に)の高さが740で、ボタンがYの値が781であった場合、それが判明します。ボタンを上に移動すると問題が解決します。すべてが正しく表示されていたため、サブビューの高さを確認することを検討してください。 サブビューがスーパービューの外にある場合、制御イベントは発生しません。便宜上、スーパービューのclipSubviewsプロパティをYESに設定して、サブビューフレームを視覚的に識別できるようにします。

関連する問題