水平滚动无限视图

时间:2013-01-18 05:56:54

标签: ios scrollview slide infinite

我正在创建一个新闻应用。要求是。

  1. 显示新闻的列表。用户可以拉取最新的新闻列表。
  2. 当用户选择一个新闻时,它将导航到详细视图。
  3. 在详细视图中。用户可以滑动手指以导航到下一个或上一个新闻。
  4. 符合要求1,2。那里有很多解决方案。这很简单。 但是对于要求3。我认为这有点困难。假设我们有10个新闻列表。 我选择第二条新闻来获取其详细视图。如果我从左向右滑动手指,它将导航到第一个新闻视图。当我再次从左向右滑动时。它应该访问该服务以查看是否有最新消息。如果是,那么它应该导航最新消息。

    我想知道是否有任何第三方项目正在做这个逻辑? 任何意见表示赞赏!

1 个答案:

答案 0 :(得分:0)

我认为有任何特定的逻辑......你必须自己创建逻辑。

对于要求1和2,您可以使用它来列出最新消息 - > RevealViewController

对于要求3,您需要添加手势识别器,如swipeleft和swiperight。

这只是一个例子:

- (void)viewDidLoad
{
    [super viewDidLoad];

    UISwipeGestureRecognizer *swipeLeft = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(tappedRightButton:)];
    [swipeLeft setDirection:UISwipeGestureRecognizerDirectionLeft];
    [self.view addGestureRecognizer:swipeLeft];

    UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(tappedLeftButton:)];
    [swipeRight setDirection:UISwipeGestureRecognizerDirectionRight];
    [self.view addGestureRecognizer:swipeRight];
}

- (IBAction)tappedRightButton:(id)sender
{
    NSUInteger selectedIndex = [rootVC.tabBarController selectedIndex];

    [rootVC.tabBarController setSelectedIndex:selectedIndex + 1];
} 

- (IBAction)tappedLeftButton:(id)sender
{
    NSUInteger selectedIndex = [rootVC.tabBarController selectedIndex];

    [rootVC.tabBarController setSelectedIndex:selectedIndex - 1]; 
}

只需修改tappedRightButton和tappedLeftButton的逻辑。希望这有帮助..