Won*_*Boy 6 iphone xcode uitableview
我注意到,Expedia的应用程序(http://a5.mzstatic.com/us/r1000/027/Purple/4c/f4/6c/mzl.wcipbyyg.320x480-75.jpg)有UITableView的酒店名单定制sectionIndex.(附图)
我认为它可能是一个自定义视图,也许是一个垂直的UISlider但是,据我所知,UISlider无法识别幻灯片上的触摸事件,只是拖动它们.
那么,他们是如何做到的?一系列垂直按钮?但是,在这种情况下,如何识别拖动事件?
我想复制那个控件,但我需要一些提示;)
谢谢
小智 1
如何达到效果的方法还有很多。假设你有一个从 nib 文件初始化的 self.view 并且它是普通的 UIView,你可以将以下代码放入 viewDidLoad 中:
- (void)viewDidLoad
{
CGRect tvFrame = self.view.frame;
tvFrame.origin = CGPointZero;
UITableView* tv = [[UITableView alloc] initWithFrame:self.view.frame];
tv.delegate = self;
tv.dataSource = self;
tv.showsVerticalScrollIndicator = NO;
[self.view addSubview:tv];
CGRect svFrame = CGRectMake(290, 10, 30, 400);
UIScrollView* sv = [[UIScrollView alloc] initWithFrame:svFrame];
sv.contentSize = CGSizeMake(10, 780);
sv.showsVerticalScrollIndicator = NO;
sv.bounces = YES;
CGRect vFrame = CGRectMake(10, 380, 10, 20);
UIView* v = [[UIView alloc] initWithFrame:vFrame];
v.backgroundColor = [UIColor blueColor];
[sv addSubview:v];
[self.view addSubview:sv];
[super viewDidLoad];
}
Run Code Online (Sandbox Code Playgroud)
这将创建一个具有狭窄滚动视图的表格,表格上方有一个蓝色矩形。现在您可以独立滚动两个滚动视图(表格也是滚动视图)。
然后,您必须设置委托并通过 UIScrollViewDelegate 接收滚动事件。当其中一个滚动视图开始拖动时,您必须开始设置另一个滚动视图的偏移量。
| 归档时间: |
|
| 查看次数: |
448 次 |
| 最近记录: |