2009-05-03 9 views
4

私のiPhoneアプリケーションにUISliderコントロールを追加する必要があります。それは、任意のiPhoneまたはiPodのタッチで表示される "スライドをロック解除"スライダのように見える必要があります。私はこれを行う方法を理解することができません。UISlider、unlock to slide

スライダをアンロックするスライダでは、スライダの中央にサムイメージを残しておくと、自動的に左側に戻ります。私たちのプロジェクトでこのような機能を実現するにはどうすればよいですか?

+0

誰もいませんか? – saikamesh

+0

私にいくつかのアイデアを教えてください – saikamesh

答えて

6

これはUISliderメソッドを使用して実装する必要があります。まず、initWithFrame:を使用してコード内に適切なサイズのスライダを作成する必要があります。それからちょうどあなたが好きな画像を切り刻むし、使用してそれらを設定します。

setMinimumValueImage:(UIImage*)image; 
setMaximumValueImage:(UIImage*)image; 
setThumbImage:(UIImage*)image forState:(UIControlState)state; 
setMinimumTrackImage:(UIImage*)image forState:(UIControlState)state; 
setMaximumTrackImage:(UIImage*)image forState:(UIControlState)state; 

次に、あなたのスライダーのアクションメソッドでは、スライダーが最大値であるかどうかを確認します。そうでない場合は、

setValue:(float)val animated:(BOOL)flag 

(アニメーションがYESの場合がほとんどです)を使用します。私はあなたが継続的な更新を止めなければならないと思う、またはあなたはいつも後方にアニメートするようになるたびにアクションを得るでしょう。これを調整する必要があるかもしれませんが、うまくいくはずです。 Appleが行うテキスト効果は得られませんが、静的なイメージを使用すると、かなり近づきます。

+0

ありがとうございました。実際にあなたの答えを見る前に、私は自分が言ったことを試しました。それはうまくいった。もう一度ありがとう!!! – saikamesh

1

「スライドロック解除」は、UISliderよりもUISwitchに近いところに表示されます。

UISwitchのカスタマイズは文書化されていません。

あなたは文書化されていない機能を使用して慣れている場合はエリカSadunによって開発者のクックブックをチェックアウト - この章のための第8章

サンプルコードはhttp://code.google.com/p/cookbooksamples/downloads/listで発見することができます。

+0

あなたの答えはありがたいです – saikamesh

+0

文書化されていないコードを使用しているのは承認プロセスで許可されていませんか? – Raptor

1

私はこれが私のアプリで実装したものだと思います。

http://denizdemir.com/2011/03/07/animated-slider-iphones-cool-first-impression/

しかし、あなたはこの機能をiTunesにアプリを提出することを計画している場合、それは拒否されることがあります。 リンゴの製品には "混乱するほど類似している"ためです。 思い出してください。

+0

もう1つの可能性は、Vijay Adhikariの技術です(http://vijaysinghadhikari.blogspot.com/2011/08/slide-to-unlock-feel.html)。これは、Appleによって8.3の違反として拒否される可能性があります。それは私には意味がないが、アップル社はスライダを使ってボタンを有効にしてこれが商標登録された「スライドを開く」機能であると言っている私のアプリを拒絶している。バマー。 –