1

这似乎是一个简单的问题,但我找不到答案。

我只想在用户触摸 uitableview 中的单元格时更改 uitextview 中的文本。

uitextview 将更改为什么取决于他们在表格中单击的单元格。

这就是我正在尝试的:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
{
    myTextView.text = [myData2 objectAtIndex:indexPath.row];
}

我已经通过在 ViewDidLoad 中初始化它来确保 myTextView 工作正常并且文本正常。

同样作为背景故事...有一个表格,其中包含来自名为 myArray 的数组的数据...当您触摸其中一个单元格时,它会进入另一个屏幕,其中几乎只有一个 UITextView,然后将从另一个数组 myArray2 中读取从您单击的行号到数组中的相应行。

当我做所有这些时,文本不会改变。

有任何想法吗?

4

3 回答 3

0

根据您在问题中所写的内容,我认为您的 textview 在另一个控制器中,所以首先,您不能直接从另一个控制器更新某些控制器的 UI。您必须在包含 textview 的视图控制器中创建一个 int 类型属性,将该 int 设置为 indexPath.row。并将该 int 用作 myData2 数组的 objectAtIndex。如果你的 textView 真的在另一个视图控制器中,你必须做一些工作

于 2012-12-14T13:37:12.260 回答
0

myTextView 是 (IBOutlet) 属性吗?如果是这样,它实际上是否链接到 Inerface Builder 中的实际 IB 对象作为出口?听起来好像有问题,因为如果您输入一个简单的行来更改代码,它也不会改变(如评论中所示)

于 2012-12-14T12:45:41.740 回答
0

我的猜测是您已正确连接您的代表。如果您尚未连接您的委托,则didSelectRowAtIndexPath不会调用该方法。

于 2012-12-14T12:46:40.157 回答