0

我是一个新手,我浏览了很多,并设法走到了这一步。我想要的是有一个带有第一个单元格的 UITableView 和一个带有 TEXTVIEW 的 CustomViewcell。在 TextView 中输入数字时。下面的单元格必须显示该输入数字的乘法表。

我的代码如下

     #import "ViewController.h"
     @interface ViewController ()

     @end

     @implementation ViewController
     @synthesize myTable,myArray,searchStr;;
     - (void)viewDidLoad
     {
         [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
         self.myArray=[NSArray arrayWithObjects:@"x 1 = ",@"x 2 = ",@"x 3 = ",@"x 4 =          ",@"x 5 = ",@"x 6 = " ,@"x 7 = ",@"x 8 = ",@"x 9 = ",@"x 10 =",nil];
     }

     - (void)didReceiveMemoryWarning
     {
         [super didReceiveMemoryWarning];
         // Dispose of any resources that can be recreated.
     }
     -(NSInteger)numberOfSectionsinTableView:(UITableView *)tableView
              {
         return 1;
     }


     -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:         (NSInteger)section
     {
         return 11;
     }

     -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:         (NSIndexPath *)indexPath
     {
         static NSString *CellIdentifier = @"Cell";

         UITableViewCell *cell = [tableViewdequeueReusableCellWithIdentifier:CellIdentifier];
         if (cell == nil)
         {
             cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1          reuseIdentifier:CellIdentifier];
             ////you another code..
         }
         if(indexPath.row<12)
         {
             if(indexPath.row>0)
             {
             cell.textLabel.text=[self.myArray objectAtIndex:indexPath.row-1];

             }
         }
         else
         {
             UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(0.0f,          0.0f, 300.0f, 100.0f)];
             [[cell contentView] addSubview:textView];

         }
             return cell;

     }
     @end

请帮助我,我完全不知道如何从 textview 获取数字并将其显示在下面的单元格中,例如

编号 * 1 = answr

就像在文本视图中必须显示 entertd 5

5 * 1 = 5 5 * 2 = 10 以此类推...

4

3 回答 3

0

我会给你点看,以实现你想要的。首先看看UITExtFieldDelegatehttps://developer.apple.com/library/ios/documentation/uikit/reference/UITextFieldDelegate_Protocol/UITextFieldDelegate/UITextFieldDelegate.html#//apple_ref/occ/intfm/UITextFieldDelegate/textFieldDidEndEditing :)

这是您可以获取用户输入的地方。特别是textFieldShouldEndEditing:可能会被起诉以验证用户输入。

获得用户输入后,您可以填充数组myArray并调用[self reloadData]以刷新 tableView。

希望能帮助到你

于 2013-11-08T07:40:32.623 回答
0

我会建议简单地让UITableView's 的数据源来自一个单独的UITextField值。为此创建自定义单元格有什么价值?您的 UITableViewDataSource 实现将在其中进行奇怪的边界检查。

表格的第一个单元格最终可以并且将在它滚出屏幕时被重新使用,因此您最终仍然依赖于支持NSString *myString

于 2013-11-08T07:43:17.707 回答
0

替换这个:

         cell.textLabel.text=[self.myArray objectAtIndex:indexPath.row-1];

有了这个:

        cell.textLabel.text = [NSString stringWithFormat:@"%d %@ %d",number,self.myArray objectAtIndex:indexPath.row-1,number*indexPath.row];

其中数字 = [textView.text intValue];

但是要从 textview 中获取数字,它不是自动的,但是有很多方法。但是由于您是新手,我建议您使用一个按钮,单击该按钮会保存数字 = [textview.text intValue] 并重新加载表格。

于 2013-11-08T08:38:22.107 回答