プロジェクトでカスタムスイッチを実装する必要があります。現在私が見いだしたことは、下の図のように実装するためにUISwitchで変更することができないことです。私は記事を追跡し、stackoverflowや他のブログでグーグルを試みたが、解決策が見つからなかった。 1つの方法は、thisポストのようなUISegmentedコントロールを使うことですが、それも私の問題を解決しません。有効と無効 - それはあなたのように見える任意のヘルプ画像付きのカスタムUISwitch
答えて
独自のスイッチを作成するのはなぜ難しいですか? UISwitchはコントロールであり、本質的には2つの状態でメッセージを送信するビューです。左画像角丸(ビューの層のcornerRadius
を設定)し、背景色でシンプルなビュー
を:表示する画像ビューコンテナビュー
を:あなたはこのようにそれを設定することができ左側に表示したい画像、つまりあなたの例のチェックマーク
右の画像:右側に表示したい画像、つまりあなたの例のXマークを表示する画像ビュー
スライダ:スイッチのスライダ部を示すイメージ図であり、他の二つの画像ビュー上に設定
ユーザタップ又は制御をスワイプする場合、の反対側にスライダーを移動するコアアニメーションを使用スイッチの状態を更新し、新しい状態の背景色に素早くフェードアウトします。コントロールのアクションをターゲットに送信します。
ありがとうございました!私はあなたの答えから解決策を達成しました。 –
それはまったく真実ではありません。あなたが切り替えるときにAppleが作った美しい効果は、それほど簡単ではありません。非線形の非線形アニメーションです。 – Curnelious
はい、私はAppleがUISwitchを正しく見せるように努力してくれたことは知っていますが、上記の記述は無効ではありません。どのくらい多くの作業をトランジションアニメーションに入れるか決定するのはオペレーション次第ですが、Core Animationのツールでは、私が記述した内容を簡単に実装することができます。 – Caleb
を事前に
おかげで自分のコントロールのみ2の状態を持っていると思います。
簡単な方法は、2つのpng画像を作成し、背景画像でカスタムUIButtonを使用し、ボタンをタップするたびにその2つの画像を置き換えることです。
これはあなたがしようとしていることですか、何か誤解しましたか?
[button setImage:[UIImage imageNamed:@"image_on"] forState:UIControlStateSelected];
[button setImage:[UIImage imageNamed:@"image_off"] forState:UIControlStateNormal];
をし、それがタップだときだけ選択したプロパティを切り替える:
gasparuffが言うように、あなたはそれだけで画像を設定し、UIButtonで何もすることができます。
- (void) buttonTap {
button.selected = !button.selected;
}
画像を自動的に変更します。
彼はどこで動くべきかを見ることができません。 – Odrakir
あなたは-[UISwitch setOnImage:]
と-[UISwitch setOffImage:]
について知っていますか?また-[UISwitch setTintColor]
。私が見ることができる唯一の欠点については、スイッチ自体が標準のiOSスイッチ(丸いボタン)になりますが、それ以外の場合、これは最もiOSのようなソリューションになります。
独自のon/offImageを実装する場合は、サイズ制限を覚えておいてください。また、画像のスイッチ側が凹面であることを覚えておいてください。 tintColor
は、残りのスイッチを自分の配色を反映させるために使用できます。 valueChanged
イベントを追跡して、色合いの色を変更したい場合があります。
あなたの質問に表示される正確な外観(四角いスイッチボタン)が必要な場合は、@ Calebが示唆しているように、おそらくカスタムコントロールを使用したいと考えています。
これはiOS 6+ –
のみです。 iOS6の採用率は92%(2013年6月)、登山率は92%です。 – Olie
- 1. カスタム画像付きUISwitch
- 2. Swift - 画像付きカスタムMKPointAnnotation
- 3. UICollectionViewCell(カスタムなしの画像付き)
- 4. インテント付きカスタム画像表示
- 5. 別のカスタムUISwitchの質問
- 6. ズーム付きのカスタム画像マーカーのサイズ変更 - Google Maps API v3
- 7. 画像付きサイコロロール
- 8. 画像付きカスタムアンドロイドボタン
- 9. 画像付きスライダー
- 10. 画像付きカスタムリストビュー
- 11. 画像付きカスタムツールバー
- 12. メールごとにカスタム画像付きテンプレートSengrid
- 13. 画像付き画像編集
- 14. 画像付きフレックスボックスの列
- 15. キャプション付きのサイドスクロール画像
- 16. 画像のアイコン付きブートストラップ
- 17. 画像付きのPHPコメントボックス
- 18. Joomlaの画像付きメニュー
- 19. 画像付きExpandableListAdapterのエラー
- 20. 画像付きのOWL-CAROUSEL2
- 21. cocos2dの画像付きアニメーション
- 22. カスタム画像ビューの画像にスケールテキスト
- 23. ドッカーの公式画像とカスタム画像
- 24. ライトボックス付き画像付きGoogleマップ
- 25. iPhone SDK:カスタム画像付きのUIButtonでタイトルを表示できますか?
- 26. キャプション付きシュリンクラップ画像コンテナ
- 27. 画像付き透明Winform
- 28. ロゴ付き画像ホバー
- 29. p:画像付きdataexporterカラム
- 30. 画像付きデジタル時計
UISegmentedControlの問題点は何ですか?私はそれがあなたがやろうとしていることのために行く方法だと思う。 – Odrakir
これを試してください:https://github.com/twotoasters/TTSwitch – Desdenova
あなたの回答はここにあります:[SwiftySwitch](https://github.com/Sethmr/SwiftySwitch) – Sethmr