0

以下のコードを使用alertViewすると、警告が表示されます

warning: Semantic Issue: Method '-addTextFieldWithValue:label:' not found (return type defaults to 'id') 

コードは次のとおりです。

    UIAlertView *alSave=[[UIAlertView alloc]initWithTitle:@"Save as" message:@"Title the note and click Save" delegate:self cancelButtonTitle:@"save" otherButtonTitles:@"cancel", nil];
    NSArray *arr=[noteObj.noteTitle componentsSeparatedByString:@" - "];
    app.longClickId = [noteObj.noteId integerValue];
    [alSave addTextFieldWithValue:[NSString stringWithFormat:@"%@",[arr objectAtIndex:0]] label:@"Note Name"];
   // show me warning at this place

    textField = [alSave textFieldAtIndex:0];
    textField.keyboardType = UIKeyboardTypeAlphabet;
    textField.keyboardAppearance = UIKeyboardAppearanceAlert;
    textField.autocorrectionType = UITextAutocorrectionTypeNo;   // correction automatically

    [alSave show];
    if (app.NotePopOver!= nil) {
        [app.NotePopOver dismissPopoverAnimated:YES];

    }
    [alSave release];
4

2 に答える 2

2

プライベートメソッド(そのうちのaddTextFieldWithValue:1つ)を使用する場合、Appleはおそらくアプリを拒否します。次のスニペットを使用して同じ結果を得ることができます。この回答のおかげで、リンクが機能しなくなったことがわかります。

UIAlertView *myAlertView = [[UIAlertView alloc] initWithTitle:@"Your title here!" message:@"this gets covered" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil];
UITextField *myTextField = [[UITextField alloc] initWithFrame:CGRectMake(12.0, 45.0, 260.0, 25.0)];
[myTextField setBackgroundColor:[UIColor whiteColor]];
[myAlertView addSubview:myTextField];
CGAffineTransform myTransform = CGAffineTransformMakeTranslation(0.0, 130.0);
[myAlertView setTransform:myTransform];
[myAlertView show];
[myAlertView release];
于 2011-11-17T05:33:26.587 に答える
1

その方法は文書化されていません。独自のテキストフィールドを作成してから、アラートビューに追加する必要があります。

于 2011-11-17T05:30:43.407 に答える