私はUIImageViewとUITextViewを持っています。私は、UITextViewがタップされたときにUIImageViewで展開するために、UITextViewが必要です。私はこれを行う方法がわかりません。あなたが手順の下に従うことができます。このUIImageVIewでUITextViewを展開するにはどうすればいいですか?
答えて
これで、タップジェスチャーでUIViewの高さを更新しようとしています。あなたは必要がありますIBOutlets
次
NSLayoutConstraint
CGFloat
変数を使用すると、 あなたNSLayoutConstraint
の定数UITapGestureRecognizer
さらに、UIImageViewは他のビューの背後にある必要があります。 Interface Builderのビュー階層の一番上にドラッグすることができます。
ここに行く:
はあなたがアニメーション化するIBOutlet
ビューのためのSとのUIViewの高さを作成します:上面図は、階層の奥にある
@IBOutlet weak var bioView: UIView!
@IBOutlet weak var bioViewHeightConstraint: NSLayoutConstraint!
これはストーリーボードへの参照にすぎません。 bioViewHeightConstraint
を変更する場合は、その定数にアクセスする必要があります。だから、そのための変数を宣言:
var bioViewHeight: CGFloat! {
/*
Here we're using a property observer to execute code whenever
this value is updated
*/
didSet {
print("stackViewHeight updated to \(bioViewHeight)")
UIView.animate(withDuration: 0.5, delay: 0.0, options: [.curveEaseIn], animations: {
self.bioViewHeightConstraint.constant = self.bioViewHeight
self.view.layoutIfNeeded()
}) { _ in
self.bioTextView.scrollRangeToVisible(NSRange(location: 0, length: 0))
print("animation complete")
}
}
}
あなたは、私がdidSet
で、この内、いくつかのアニメーションのコードを入れて表示されます。したがって、bioViewHeight
を変更するたびにbioViewHeightConstraint.constant
が更新されます。
let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(toggleHeight(sender:)))
tapGestureRecognizer.numberOfTapsRequired = 1
bioView.addGestureRecognizer(tapGestureRecognizer)
タップジェスチャーコードがviewDidLoad
に行く:
次に、我々は次のコードでUITapGestureRecognizer
を設定します。
次に、タップ用のハンドラを記述する必要があります。そのコードは次のとおりです。
func toggleHeight(sender: UITapGestureRecognizer) {
if bioViewHeightConstraint.constant == UIScreen.main.bounds.height/2 {
// true
bioViewHeight = UIScreen.main.bounds.height - 30 // gives space for status bar
} else {
// false
bioViewHeight = UIScreen.main.bounds.height/2
}
}
これは、実行しようとしていることを実行できる基本的なコードです。完全なコードを含むrepoへのリンクがあります。
ありがとう私は見てみましょう。私は似たようなものを実装しましたが、あなたのものほどうまくはありません。 –
ありがとう、それは素晴らしい作品!私はその青い線をどのように追加して、ビューが上がったり下ったりするのかを知ることができますか? –
長方形以外のビューを作成することは一度もありませんでしたが、矩形以外のビューはすばやくグーグルにしたいと思っています。上の線は青色の境界線にすぎないと思います。 – Adrian
から
:
- あなたのビューコントローラのレイアウト(ストーリーボードまたはコード)では、あなたはUITextViewの下にUIImageViewを置くことを確認してください。
UITextViewタップイベントを処理するIBActionでは、フレームの高さをコントローラの高さと同じに更新するだけです。 (スクリーンショットに見られるように)。
//ビューフレームを更新するいくつかの方法の1つ
textView.frame = CGRect(x:0、y:0、width:self.view.frame.width、height:self.view.frame.height )
あなたはここにUITextViewのサイズを更新するために他の方法を見つけることができます:How do I change UIView Size?
あなたはConstrains
でそれをも行うことができます。あなたはUITextView
。あなたにUITapGesture
のAction
に特定constraint
のconstant
値を変更する必要があるのはTextView
.TryこのTextView
のTop
のConstraints
とheight
を変更することができます!
downVoteの理由を知っていますか? –
- 1. divでコンテンツを展開するにはどうすればよいですか?
- 2. プロジェクトでデータベースを展開するにはどうすればよいですか?
- 3. カピストラノでローリング展開を行うにはどうすればよいですか?
- 4. Cでチルダ展開を行うにはどうすればよいですか?
- 5. 展開リストを展開リストでハイライト表示するにはどうすればよいですか?
- 6. hadoopソリューションを展開するにはどうすればよいですか?
- 7. データベースプロジェクトを展開するにはどうすればよいですか?
- 8. SharePointカスタムタイマージョブを展開するにはどうすればよいですか?
- 9. ツリービューを展開できないようにするにはどうすればいいですか?
- 10. UIImageViewをランドスケープモードに変更するにはどうすればいいですか?
- 11. UITextView、リターンキーを削除するにはどうすればいいですか?
- 12. UITextViewでイメージを追加するにはどうすればよいですか?
- 13. UITextViewをスクロールさせるにはどうすればいいですか?
- 14. UITextViewを展開する
- 15. UIImageViewでUIGestureRecognizerを設定するにはどうすればよいですか?
- 16. アニメーションでUIImageviewを表示するにはどうすればよいですか?
- 17. タップジェスチャーでUIImageViewをアニメーション化するにはどうすればよいですか?
- 18. UITextViewをUIAlertViewに配置するにはどうすればよいですか?
- 19. 共有ホスティングでヒロクのような展開を実行するにはどうすればいいですか?
- 20. ヘッダーが水平なページ展開で浮くようにするにはどうすればいいですか?
- 21. gccでlprintがインライン展開されるようにするにはどうすればよいですか?
- 22. ブランチを運用サーバーに展開しないようにするにはどうすればよいですか?
- 23. ウェブサイトの `.htaccess`ファイルを展開するために` scp`を使うにはどうすればいいですか?
- 24. herokuにローカルに展開されたPHPプロジェクトを実行するにはどうすればいいですか?
- 25. JBossサーバーでtypescriptでAngular 2を展開するにはどうすればいいですか?
- 26. SearchViewをAndroidで常に展開するにはどうすればいいですか?
- 27. Azure WebアプリケーションにAngular4 + Webpackアプリケーションをソースリポジトリなしで展開するにはどうすればいいですか?
- 28. UIImageViewクラスをリリース/削除するにはどうすればよいですか?
- 29. Heroku上のサブプロジェクトを参照するEclipseプロジェクトを展開するにはどうすればいいですか?
- 30. Tomcat 9.0でRESTEasyアプリケーションを展開するにはどうすればいいですか?
もう少しお伝えできますか? UIImageViewを拡張するとどういう意味ですか?同じポイントとサイズにしたいですか? –
コンテキストの画像を追加しました –
自動レイアウトを使用していますか?テキストビューとイメージビューをメインビューにどのように添付しましたか?あなたはいくつかの詳細とこれを伝えることができますか?プログラマチックに、またはストーリーボードまたはxibファイルでサブビューを作成して追加しましたか? –