2017-02-09 7 views
1

ボタンをクリックしたときにrightmodeviewを使用して画像をtextFiledに設定しました。 今、私が欲しいのは、touchingボタンを使わずにtextFieldをタップしてイメージを隠したいのですか? このコードはtextField、Objective CのタップでtextFieldの画像をクリアするには?

-(void)textFieldDidBeginEditing:(UITextField *)textField {  
     //set right view nil 
} 

私のために働いている

+0

'textFieldDidBeginEditing'デリゲートメソッドで' textfield.rightView = nil'を設定します。 – Mahesh

+0

ありがとう、それはボタンのクリックイベントで動作しますが、ボタンをクリックせずに画像を隠したいと思っています!!どんな考えでもどうぞ! – taj

+0

上記の更新されたコメントを確認してください。テキストフィールドをタップすると、 'textFieldDidBeginEditing'デリゲートメソッドが呼び出されます。テキストフィールドのrightviewをnilとして設定することができます。 – Mahesh

答えて

0

私を助けて、あなたが

が何かをするのviewDidLoad

にコードの下に
yourTextField.delegate = self; 
+0

ありがとう、私はそれを持って:)しかし、[yourTextfiledデリゲート] =自己は[yourTextField setDelegate:self]のようにする必要があります。私はそれを変更し、私は結果を得た – taj

+0

実際に私は迅速な開発者ですが、私は客観的なCについての少しのアイデアを持っています...私の答えは本当にあなたのために役立ちますので、 –

0

を追加するには、テキストフィールドのためのUITextFieldのデリゲートを設定してくださいlike:

-(void)textFieldDidBeginEditing:(UITextField *)textField { 
textfield.rightView=nil; 
//Do other stuff,if you want to do 
} 
0

サンプル1を作成しましたが、うまく動作しようとしました。

ViewController.h

#import <UIKit/UIKit.h> 
@interface ViewController : UIViewController<UITextFieldDelegate> 
@property (strong, nonatomic) IBOutlet UITextField *txtFldImage; 
@end 

ViewController.m

- (void)viewDidLoad { 
[super viewDidLoad]; 
// Do any additional setup after loading the view, typically from a nib. 
    txtFldImage.rightViewMode = UITextFieldViewModeAlways; 
    txtFldImage.rightView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"boss-icon.png"]]; 
} 
-(void)textFieldDidBeginEditing:(UITextField *)textField{ 
    txtFldImage.rightView = nil; 
} 

私は、TextField

を入力するか、タッチするとアプリ

enter image description here

を実行すると、

enter image description here