React Native は、プルアップとプルダウンの監視ジェスチャを実装します。詳細なコアコードは次のとおりです。 コード: 'react-native' から {PanResponder} をインポートします。 var Dimensions = require('Dimensions'); const deviceHeight = Dimensions.get("window").height; const deviceWidth = Dimensions.get("window").width; クラスTaskfinishedPageはComponentを拡張します{ コンストラクタ(props) { スーパー(小道具); コンソールでYellowBoxを無効にするには、trueを選択します。 この状態 = { シルダーマージン: デバイス高さ-230、 }; this.lastY1 = this.state.silderMargin; } コンポーネントマウント() { this._panResponder = PanResponder.create({ onStartShouldSetPanResponder:(evt, ジェスチャー状態) => { true を返します。 }, onMoveShouldSetPanResponder: (evt, ジェスチャー状態) => { true を返します。 }, onPanResponderGrant: (イベント、ジェスチャー状態) => { this._highlight(); }, onPanResponderMove: (イベント、ジェスチャー状態) => { コンソールにログを記録します(`gestureState.dx: ${gestureState.dx} ジェスチャーステート.dy: ${gestureState.dy}`); (50 < this.lastY1 + ジェスチャーステート.dy && this.lastY1 + ジェスチャーステート.dy < デバイスの高さ - 230){ this.setState({ // marginLeft1: this.lastX1 + ジェスチャーステート.dx, シルダーマージン: this.lastY1 + ジェスチャーステート.dy、 }); } }, onPanResponderRelease: (evt, ジェスチャー状態) => { this._unhighlight(); this.lastY1 = this.state.silderMargin; }, onPanResponderTerminate: (evt, ジェスチャー状態) => { }, }); } //これら 2 つのメソッドは、手が触れたときと離れたときにトリガーされます。 _ハイライト解除(){ this.setState({ スライダー背景色: '透明'、 }); } _ハイライト(){ this.setState({ スライダー背景色: '透明'、 }); } 与える() { 戻る ( <コンテナ}> <ヘッダー> <左> <ボタンを透明にする onPress={() => { ナビゲーションユーティリティをリセットして戻る(this.props.navigation); }}> <アイコン名='arrow-back' スタイル={{color:'#000'}}/> </ボタン> </左> <本文> <Text style={{color:'#000'}}>完了したミッションの詳細</Text> </本文> <右 /> </ヘッダー> <View style={{ flex: 1 }}> <表示スタイル={ [スタイル.パネルビュー、 { 背景色: this.state.sliderBackgroundcolor、 marginTop: this.state.silderMargin、 zインデックス:100 } ]} {...this._panResponder.panHandlers} > </表示> </表示> </コンテナ> ); } 定数スタイル = { パネルビュー: { 幅: デバイス幅-20、 高さ: 410, マージン左:10, マージン右:10, 境界半径:6, } } デフォルトの TaskfinishedPage をエクスポートします。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL FAQ シリーズ: 一時テーブルを使用する場合
>>: 同じ IP のアクセス頻度を制限するように nginx を設定する方法
目次1. Vueの初期化vue エントリ ファイルフルバージョンとランタイムバージョンの違い1.1、...
1. catalina.bat は UTF-8 に設定する必要があります。UTF-8 に設定しないと...
目次1. 説明2. インストール3. テスト1. 説明Vue Router は、Vue.js の公式...
輸出: docker save -o centos.tar centos:latest #cento...
SQL ファジークエリステートメント一般的なファジーステートメントの構文は次のとおりです。 SELE...
1. コンセプトこれらはすべて Element の属性であり、要素の幅を示します。 Element....
目次イベント駆動型とパブリッシュ・サブスクライブ型ブラウザの JavaScript ではイベント駆動...
注意: docker-compose.yml ファイルを書き込むときは、すべてのコロン (:) とダ...
目次1. DATETIMEとTIMESTAMPの使用1. 類似点2. 相違点3. 選択2. varc...
この記事のシナリオと組み合わせて、Nginx と Java 環境 (SpringBoot プロジェク...
BGCOLOR 属性を使用して、行の背景色を設定できます。基本的な構文<TR BGcolor...
この記事では主に、ElementUI テーブルのヘッダー アイコンにフローティング プロンプトを追加...
最近、ブログのアップグレードを始めました。テンプレートを変更する過程で、CSS スタイルシートを書き...
時々、選択した内容をグループ化する必要があります。以前はプログラム制御を使用していました。今日、se...
今日は簡単な3Dルービックキューブを作ってみましょうまずはレンダリングを見てみましょう!これを学んだ...