textViewのinputAccessoryViewプロパティでツールバーを使用しています。キーボードが表示されると、期待どおりにツールバーが表示されます。デバイスを回転させたら、ツールバーを削除したいと思います。私は試した:
myTextView.inputAccessoryView.hidden = !layoutIsPortrait;
これによりツールバーは非表示になりますが、背の高いキーボードの輪郭は残ります。キーボードはまだツールバーに合うサイズになっているようです。見た目が悪く、基になるレスポンダーのタッチイベントを妨害します。
myTextView.inputAccessoryView = nil;
FirstResponderを辞任してから、再びFirstResponderになった場合にのみ機能します。これは受け入れられません。textViewのカーソル位置とコンテンツが失われ、キーボードが点滅します。
[myTextView.inputAccessoryView removefromSuperview];
何もしません。ツールバーへの参照をiVarに保存し、代わりにそれに対処しました。
[myIvarReference removeFromSuperview];
それは機能しますが、キーボードの背の高い輪郭がかすかに見えます。今回は他のビューのタッチに干渉しません。したがって、これは実用的なソリューションですが、視覚的には受け入れられません。inputAccessoryViewを自由に表示および非表示にできる他に何ができますか?
スクリーンショット-キーボードの上のかすかな線は、削除されたツールバーの残りです