0

在我的应用程序中,我想以UIView编程方式进行选择。如何以UIView编程方式选择?

If(UIView is selected programmatically || UIView is tapped){

          invoke tapGesture Action
}

是否可以?

4

3 回答 3

2

UIView 本身不支持选择,尽管一些子类支持。例如, UITableViewCell 有一个selected属性可以修改单元格如何绘制自身。

如果您想模仿用户点击视图时发生的情况,您将做两件事:

  • 提供与用户点击该视图时相同的反馈。这可能意味着重绘视图、执行动画、播放声音或这些的组合。

  • 执行与用户点击视图相同的操作。

因此,如果视图是一个按钮,您可以将其highlighted状态设置为 YES,等待 0.2 秒,然后将其设置回之前的状态。接下来,在按钮的目标上调用按钮的操作。

于 2012-07-21T10:28:21.723 回答
1

在视图中添加一个UITapGestureRecognizer

UITapGestureRecognizer *tapGR = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(aMethodToBeCalled)];
[yourView addGestureRecognizer:tapGR];

实现该aMethodToBeCalled方法并在此处执行任何需要调用的操作。

于 2012-07-21T10:04:46.687 回答
0

我想你想选择子视图。

您可以使用以下方法标记初始化视图:

UIView *exampleView = [UIView alloc] init];
[exampleView setTag:1];

添加视图:

[self.view addSubView:exampleView];

当您想调用视图时,只需使用:

[self.view viewWithTag:1];
于 2012-07-21T10:28:34.363 回答