如何让可滚动的页面视图左右滑动?

时间:2016-03-08 22:46:49

标签: ios objective-c uiviewcontroller

我有一个应用程序,通过Web服务器读取图像的多个图像和描述。图像数量是可变的。

我想要一个VC并且在VC的中间我想要一个可滚动的视图,用户可以左右滑动每张图片并选择他们自己的图片。

最重要的是当视图显示图片时我需要完整地显示一张图片,并且每侧必须显示左右图像的一半。

图像数量不超过10张,但每次都会更改。

当他们点击每张照片时,它会转到另一个VC并按照特定的动作进行操作。因此,图片就像一个带动作的按钮。每次更改的图片数量,所以我必须有一些类型的容器动态阅读图片并显示它们。

我可以动态使用PageViewController还是使用Scroll View?

我感谢任何人都可以建议我实施此VC的最佳方法。

2 个答案:

答案 0 :(得分:1)

您不需要**ClassCastException clojure.lang.Cons cannot be cast to java.lang.Number clojure.lang.RT.floatCast (RT.java:1262)**

实现此目的的最佳方法是使用UIPageViewController启用水平滚动和分页。

答案 1 :(得分:0)

在视图中加载你可以添加 这适用于具有pagging的集合视图:

import {Component} from 'angular2/core';
import {ROUTER_DIRECTIVES, RouteConfig, Router } from 'angular2/router';
import {FORM_PROVIDERS, FORM_DIRECTIVES, Control} from 'angular2/common';
import {LoginComponent} from './login.component.js';
import {HomeComponent} from './home.component.js';

@Component({
selector: 'front-page-app',
providers: [ FORM_PROVIDERS ],
directives: [ ROUTER_DIRECTIVES, FORM_DIRECTIVES ],
template: `
<div class="container">
  <div class="header clearfix">
    <nav>
      <ul class="nav nav-pills pull-right">
        <li #homeLink role="presentation" 
            [class.active]="isRouteActive(['./Home'])">
        <a [routerLink]="['./Home']">Home</a>
        </li>
        <li #loginLink role="presentation" 
            [class.active]="isRouteActive(['./Login'])">
        <a [routerLink]="['./Login']">Login</a>
        </li>
      </ul>
    </nav>
    <h3 class="text-muted">Fomoapp</h3>
  </div>
</div> <!-- /container -->
<router-outlet></router-outlet>
`
})

@RouteConfig([
{ path: '/login', component: LoginComponent, name: 'Login' },
{ path: '/home', component: HomeComponent, name: 'Home' },
{ path: '/', redirectTo: ['Home'] }
])
export class AppComponent { 
public isRouteActive(route) {
    return this.router.isRouteActive(this.router.generate(route))
}
}

然后你必须输入这样的输入页面大小

self.pageControl.frame = CGRectMake([UIScreen mainScreen] .bounds.size.width / 2,_collectionView.frame.size.height + _collectionView.frame.origin.y + 20,20,20);

[_ collectionView reloadData]; 多数民众赞成。