如何从alertview中获取textview的值[重复]

Posted

技术标签:

【中文标题】如何从alertview中获取textview的值[重复]【英文标题】:how to get value of textview from alertview [duplicate] 【发布时间】:2013-03-14 10:30:50 【问题描述】:

我无法从我的 alertView 中获取 textView 的值

UITextView *textView = [[UITextView alloc]initWithFrame:CGRectMake(12, 50, 260, 100)];

    [textView setText:@""];

    UIAlertView *av = [[UIAlertView alloc]initWithTitle:@"put text\n\n\n\n\n\n" message:@"" delegate:self cancelButtonTitle:@"Annuler" otherButtonTitles:@"Envoyer",nil];
    av.alertViewStyle = UIAlertViewStyleDefault;
    [av addSubview:textView];
    [av show]; 

它显示带有textview的alertview视图,它很好,我想得到textview的值我的

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex         

你能帮帮我吗

【问题讨论】:

你可以在标签的帮助下使用 这可能对您有所帮助:在 ios 5 中,有一个标准化的UIAlertView,带有一个用于基本输入的文本框。只需像这样设置样式:alert.alertViewStyle = UIAlertViewStylePlainTextInput;。然后,您可以提取用户输入的内容,如下所示:- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex NSLog(@"Entered: %@",[[alertView textFieldAtIndex:0] text]); Found here。 【参考方案1】:

声明 textView 以供整个班级使用

@implementation objectTables

    UITextView *textView;

然后在你的

textView = [[UITextView alloc]initWithFrame:CGRectMake(12, 50, 260, 100)];

    [textView setText:@""];

    UIAlertView *av = [[UIAlertView alloc]initWithTitle:@"Push Notification\n\n\n\n\n\n" message:@"" delegate:self cancelButtonTitle:@"Annuler" otherButtonTitles:@"Envoyer",nil];
    av.alertViewStyle = UIAlertViewStyleDefault;
    [av addSubview:textView];
    [av show]; 

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex      

   NSString *textViewText = [textView text];


【讨论】:

【参考方案2】:

你可以使用 - (UITextField *)textFieldAtIndex:(NSInteger)textFieldIndex 这将返回 UITextField 的对象。

并从 UITextField 中获取文本。

或者另一种方式是

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex


UITextField *TextField = (UITextField *)[alertView viewWithTag:YOURTAG];

【讨论】:

【参考方案3】:

你可以试试这个:

UITextView *textView = [[UITextView alloc]initWithFrame:CGRectMake(12, 50, 260, 100)];
[textView setText:@""];
textView.tag = 10;
UIAlertView *av = [[UIAlertView alloc]initWithTitle:@"put text\n\n\n\n\n\n" message:@"" delegate:self cancelButtonTitle:@"Annuler" otherButtonTitles:@"Envoyer",nil];
av.alertViewStyle = UIAlertViewStyleDefault;
[av addSubview:textView];
[av show]; 

在委托中

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
      UITextView *textView = (UITextView *) [alertView viewWithTag:10];
      NSString *yourText = textView.text;       

【讨论】:

【参考方案4】:

只需在 .h 文件中声明您的 UITextView

UITextView *textView;

在.m文件中

textView = [[UITextView alloc]initWithFrame:CGRectMake(12, 50, 260, 100)];

    [textView setText:@""];

    UIAlertView *av = [[UIAlertView alloc]initWithTitle:@"put text\n\n\n\n\n\n" message:@"" delegate:self cancelButtonTitle:@"Annuler" otherButtonTitles:@"Envoyer",nil];
    av.alertViewStyle = UIAlertViewStyleDefault;
    [av addSubview:textView];
    [av show];

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 

//Gives you the Value of UITextView
        NSLog(@"%@",[textView text]); 

或者您可以将其定义为Extended class(.m 文件) 中的属性并访问它。

@Interface yourINterfaceName()

@property(nonatomic , retain ) UITextView *textView;

【讨论】:

【参考方案5】:

试试这个

UITextView *textView = [[UITextView alloc]initWithFrame:CGRectMake(12, 50, 260, 100)];

[textView setText:@""];
textView.tag =10;
UIAlertView *av = [[UIAlertView alloc]initWithTitle:@"put text\n\n\n\n\n\n" message:@"" delegate:self cancelButtonTitle:@"Annuler" otherButtonTitles:@"Envoyer",nil];
av.alertViewStyle = UIAlertViewStyleDefault;
[av addSubview:textView];
[av show];



- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex


 UITextView *textView = (UITextView *)[alertView viewWithTag:10];
  NSLog(@"%@",[textView text]); 


【讨论】:

以上是关于如何从alertview中获取textview的值[重复]的主要内容,如果未能解决你的问题,请参考以下文章

我们如何从 javascript 变量中获取 php 变量中的值

如何从视图中获取文本,而不是 Textview

如何从 Activity 中获取 Widget 的 TextView 的文本?

如何从 SQLITE DATABASE 获取特定数据并在 TextView 中显示

如何从linkify textview获取url

如何从按钮中获取值?