文档章节

UIWebView和UICollectionViewController的使用

Li红墙
 Li红墙
发布于 2016/07/22 10:44
字数 525
阅读 3
收藏 0
点赞 0
评论 0

 

UIWebView

    UIWebView是iOS内置的浏览器的控件, 可以浏览网页, 打开文档等 .系统自带的Safari浏览器就是通过UIWebView实现的, 能够加载html/htm, pdf, docx, txt等格式的文件.

    在iOS7之前, UILabel, UITextFiled 以及 UITextView 都在后台以某种方式使用 WebKit来进行文本布局和渲染.

    渲染 : 是CG的最后一道工序, 将所设计内容制作成最终效果图或者动画的过程 .

UIWebView的使用

    1> 确定要访问的资源

NSURL *url = [NSURL URLWithString : @"http://www.baidu.com"];

    2> 建立网络请求

NSURLRequest *request = [NSURLRequest requestWithURL :url];

    3> UIWebView加载网络请求

[self.webView loadRequest : request];

UIWebView - 实现百度搜索

-(void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
    NSString *str = searchBar.text;
    
    // 1. 判断是否以http开头,如果没有则用百度搜索
    if (![str hasPrefix:@"http://"]) {
        str = [NSString stringWithFormat:@"http://m.baidu.com/s?word=%@", str];
    }
    
    // 2. 在URL中,如果包含中文字符串,需要将字符串转换为带百分号的格式
    NSURL *url = [NSURL URLWithString:[str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
}

UIWebView - 前进后退

#pragma mark - UIWebView代理方法
-(void)webViewDidFinishLoad:(UIWebView *)webView
{
    self.goBackButton.enabled = self.webView.canGoBack;
    self.goForwardButton.enabled = self.webView.canGoForward;
}

UIWebView优缺点:

优点:

    1> 使用简单 ; NSURL确定要访问的网络资源, NSURLRequest建立网络请求;

    2> 能够方便的展现丰富的页面内容 ;

    3> 在开发中, 通常遇到不方便排版的内容, 会考虑选择UIWebView .

缺点: 

    1> 以HTML为基础的页面方式, 交互相对单一, 局限性大 ;

    2> 编辑排版HTML页面同样需要花费人力.

UICollectionViewController的使用

    1> 注册cell(告诉collectionView将来创建怎样的cell) .

[self.collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"product"];

    2> 从缓存池中取出cell

-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
  UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"product" forIndexPath:indexPath];
    return cell;
}

    3> 重写init方法, 创建布局参数

-(id)init
{
    // 1.流水布局
      UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
    // 2.每个cell的尺寸
      layout.itemSize = CGSizeMake(100, 100);
    return [super initWithCollectionViewLayout:layout];
}

UICollectionViewFlowLayout

    UICollectionViewFlowLayout 称为 "流水布局", 用来约束cell的显示 ;

常见属性:

// cell的尺寸 
@property (nonatomic) CGSize itemSize;
// cell之间的水平间距 
@property (nonatomic) CGFloat minimumInteritemSpacing;
// cell之间的垂直间距 
@property (nonatomic) CGFloat minimumLineSpacing;
// 四周的内边距 
@property (nonatomic) UIEdgeInsets sectionInset;

© 著作权归作者所有

共有 人打赏支持
Li红墙
粉丝 0
博文 3
码字总数 2160
作品 0
UIWebView和UICollectionViewController

UIWebView和UICollectionViewController的使用 UIWebView UIWebView是iOS内置的浏览器的控件, 可以浏览网页, 打开文档等 .系统自带的Safari浏览器就是通过UIWebView实现的, 能够加载html/ht...

傲风凌寒
2014/06/02
0
0
疯狂ios讲义之网页控件(UIWebView)

通过使用UIWebView控件,可以实现一个内置的浏览器(类似于Safari),而且可以直接将这个浏览器内嵌到应用的任意位置,因此非常方便。 UIWebView直接继承了UIView基类,一般不可以与用户交互...

博文视点
2014/01/26
1K
0
collectionView控制器 view cell 的关系

UICollectionViewController中有collectionView;而collectionView有UICollectionViewCell; 因此UITableViewController会有collectionView 和collectionViewCell,控制器默认已经遵守数据源和......

奋斗的青春年华
2016/08/23
4
0
iOS UIWebView 使用大全

一、UIWebView的基础使用 以上是IOS中UIWebView的基础使用要点详解,接下来一些UIWebView的常用注意点。 二、IOS中UIWebView常用注意点: 1、与UIWebView进行交互,调用web页面中的需要传参的...

朝雨晚风
2016/08/15
0
0
如何解决UIWebview+UIPageViewController 翻页不流畅的问题

最近在做一个基于IOS的 epub reader, 基本的实现思路就是用UIWebview 显示epub内的xhtml文件。为了实现类似iBooks模拟翻页效果,所以用到了IOS5提供的UIPageViewController 。 具体的实现思...

Larrylu
2013/01/23
1K
0
iOS开发之UIWebView

UIWebView是iOS sdk中一个最常用的控件。是内置的浏览器控件,我们可以用它来浏览网页、打开文档等等。这篇文章我将使用这个控件,做一个简易的浏览器。如下图: 我们创建一个Window-based ...

晨曦之光
2012/03/09
0
0
SlackTextViewController

SlackTextViewController 是嵌入式 UIViewController 子类,带有可增长的文本输入视图,还有其他有用的信息传递功能。SlackTextViewController 可以替代 UITableViewController & UICollecti...

叶秀兰
2014/09/27
791
0
UIWebView的使用

一、创建UIWebView [java] view plaincopyprint? CGRect bouds = [[UIScreen manScreen]applicationFrame]; UIWebView* webView = [[UIWebView alloc]initWithFrame:bounds]; CGRect bouds =......

junwong
2012/03/23
2.3K
0
UIWebView网页视图—IOS开发

UIWebView可以让你创建一个网页浏览器,类似safari,而不是在程序中启动safsri哦。是不是觉得很棒呢?废话少说,切入正题。 一、创建UIWebView CGRect bouds = [[UIScreen manScreen]applica...

junwong
2012/03/05
1K
0
与webView进行交互,webView小记

一、与webView进行交互,调用web页面中的需要传参的函数时,参数需要带单引号,或者双引号(双引号需要进行转义在转义字符前加),在传递json字符串时不需要加单引号或双引号。 -(void)webVi...

山不在高有仙则名
2012/08/04
0
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

win10 上安装解压版mysql

1.效果 2. 下载MySQL 压缩版 下载地址: https://downloads.mysql.com/archives/community/ 3. 配置 3.1 将下载的文件解压到合适的位置 我最终将myql文件 放在:D:\develop\mysql 最终放的位...

Lucky_Me
8分钟前
0
0
linux服务器修改mtu值优化cpu

一、jumbo frames 相关 1、什么是jumbo frames Jumbo frames 是指比标准Ethernet Frames长的frame,即比1518/1522 bit大的frames,Jumbo frame的大小是每个设备厂商规定的,不属于IEEE标准;...

问题终结者
23分钟前
0
0
expect脚本同步文件expect脚本指定host和要同步的文件 构建文件分发系统批量远程执行命令

expect脚本同步文件 在一台机器上把文件同步到多台机器上 自动同步文件 #!/usr/bin/expectset passwd "123456"spawn rsync -av root@192.168.133.132:/tmp/12.txt /tmp/expect {"yes...

lyy549745
23分钟前
0
0
36.rsync下 日志 screen

10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具 10.32/10.33 rsync通过服务同步: rsync还可以通过服务的方式同步。那需要开启一个服务,他的架构是cs架构,客户端服务...

王鑫linux
31分钟前
0
0
matplotlib 保存图片时的参数

简单绘图 import matplotlib.pyplot as pltplt.plot(range(10)) 保存为csv格式,放大后依然很清晰 plt.savefig('t1.svg') 普通保存放大后会有点模糊文件大小20多k plt.savefig('t5.p...

阿豪boy
36分钟前
0
0
java 8 复合Lambda 表达式

comparator 比较器复合 //排序Comparator.comparing(Apple::getWeight);List<Apple> list = Stream.of(new Apple(1, "a"), new Apple(2, "b"), new Apple(3, "c")) .collect(......

Canaan_
昨天
0
0
nginx负载均衡

一、nginx 负载均衡 拓扑图: 主机信息: 1、负载均衡器1(lb1):192.168.10.205 RHEL7.5 2、负载均衡器2(lb2):192.168.10.206 RHEL7.5 3、web服务器1(web01):192.168.10.207 Centos...

人在艹木中
昨天
0
0
做了一个小网站

做了一个小网站 www.kanxs123.com

叶落花开
昨天
0
0
继社会佩奇之后,又尝试了可爱的蓝胖子,有趣 Python

#哆啦A梦# !/usr/bin/env python3# -*- coding: utf-8 -*-# @Author: dong dong# @Env: python 3.6from turtle import *# 无轨迹跳跃def my_goto(x, y): penup(...

Py爱好
昨天
0
0
shell及python脚本方式登录服务器

一、问题 在工作过程中,经常会遇见需要登录服务器,并且因为安全的原因,需要使用交互的方式登录,而且shell、python在工作中也经常用到,并且可以提供交互的功能。都是利用了expect、spawn...

yangjianzhou
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部