【问题标题】:UIScrollview as main view IOS 8UIScrollview 作为主视图 IOS 8
【发布时间】:2015-07-23 08:03:50
【问题描述】:

我正在尝试将 uiscrollview 作为 IOS 8 中的主视图,但我做不到。

我有以下结构:

  • 查看
    • Header_View(类似于 TabBar)
    • UIScrollView
      • 内容视图
        • UIImage
        • UILabel_Text
        • 用户界面按钮

有时文本比其他文本大,所以我不知道视图的确切高度。使用这种结构,当我尝试垂直滚动时没有任何反应。

有人可以帮我吗?

谢谢。

【问题讨论】:

  • 内容视图尺寸是否大于滚动视图尺寸?
  • 改用 UITableView
  • 看起来您没有对滚动视图应用适当的约束。
  • 你设置了scrollview的contentSize吗?
  • 我尝试使用 UITableView 并发生了 2 个错误。 1.当我滚动时,它在标题视图上 2.高度是设备高度,所以我看不到所有文本。

标签: ios objective-c ios8 uiscrollview scrollview


【解决方案1】:

首先在 ViewController.h 中取一个像 ajustHeight 这样的 int 变量

#import <UIKit/UIKit.h>
@interface ViewController : ViewController{
  int ajustHeight;
}

然后在 ViewController.m 中使用这个变量来获取 UILabel_Text 的高度,如下所示。

    @interface ViewController ()

    @end

    @implementation ViewController

- (void)viewDidLoad
{
    UILabel *successlabel = [[UILabel alloc]initWithFrame:CGRectMake(10, 10, 215, 75)];
    successlabel.text = message;
    successlabel.numberOfLines = 0;
    successlabel.textAlignment = NSTextAlignmentLeft;
    [successlabel sizeToFit]; 

    [expandableview addSubview:successlabel];

    ajustHeight   =  successlabel.frame.size.height;

}

现在您获得了成功标签的高度,之后您也可以调整视图和滚动视图的内容高度。如果您在 for 循环中创建 UILable,则用户喜欢 ajustHeight += successlabel.frame.size.height;

【讨论】:

  • 我试过了,滚动条位于标题视图上方。滚动如何隐藏在标题视图下方?
  • ok 那么你可以使用这个代码 "headerView.layer.zPosition = 1.0f; "
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多