本文转载至:http://www.cnblogs.com/huangdongcheng/archive/2011/11/21.html

1.UIImageView的讲解

(1)初始化

UIImageView  *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0.0,45.0,300,300)];

imageView.image = [UIImage imageNamed:@"a.png"];//加载入图片

[self.view addSubView:image];

也可以这样声明:

UIImage *image = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://farm4.static.flickr.com/3092/2915896504_a88b69c9de.jpg"]]];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];

在加载入图片的时候有两种加载UIImage的方法:如下:

-》1

[UIImage imageNamed:@"a.png"];

-》2

NSString *path = [[NSBundle mainBundle] pathForResource:@”icon”
ofType:@”png”];
myImage = [UIImage imageWithContentsOfFile:path];

如果找到图片,装载到iPhone系统缓存图象。那意味图片是(理论上)放在内存里作为cache的。因此如果图片资源多了或大了,此方式容易引起发生内存警告从而导致自动退出的问题。

最好是通过直接读取文件路径[UIImage imageWithContentsOfFile]解决掉这个问题.

NSImage *image = [[NSImage alloc]initWithContentsOfURL:(NSURL *)];

NSImage *image = [[NSImage alloc]initWithContentsOfFile:(NSString *)];
 
最后要记得释放掉image。 

(2)利用UIImageView实现幻灯片效果

利用UIImageView和UISider来制作幻灯片。

ImagesViewController.h

#import <UIKit/UIKit.h>

@interface ImagesViewController : UIViewController

{

         UIImageView *imageView;

         UISlider *slider;

}

@property (nonatomic, retain) IBOutlet UIImageView *imageView;

@property (nonatomic, retain) IBOutlet UISlider *slider;

- (IBAction)sliderAction:(id)sender;

@end
ImagesViewController.m

#import "ImagesViewController.h"
#import "Constants.h" #define kMinDuration 0.0
#define kMaxDuration 10.0 @implementation ImagesViewController @synthesize imageView, slider; - (void)dealloc
{
[imageView release];
[slider release]; [super dealloc];
} - (void)viewDidLoad
{
[super viewDidLoad]; self.title = NSLocalizedString(@"ImagesTitle", @"");
self.imageView.animationImages = [NSArray arrayWithObjects:
[UIImage imageNamed:@"scene1.jpg"],
[UIImage imageNamed:@"scene2.jpg"],
[UIImage imageNamed:@"scene3.jpg"],
[UIImage imageNamed:@"scene4.jpg"],
[UIImage imageNamed:@"scene5.jpg"],nil];
imageView.animationDuration = 5.0;
[self.imageView stopAnimating];
imageView.image = [UIImage imageNamed:@"a.png"];
[self.imageView setIsAccessibilityElement:YES];
[self.imageView setAccessibilityLabel:self.title];
[self.slider setAccessibilityLabel:NSLocalizedString(@"DurationSlider",@"")];
}
- (void)viewDidUnload
{
[super viewDidUnload]; self.imageView = nil;
self.slider = nil;
}
- (IBAction)sliderAction:(id)sender
{
UISlider* durationSlider = sender;
self.imageView.animationDuration = [durationSlider value];
if (!self.imageView.isAnimating)
[self.imageView startAnimating];
} #pragma mark -
#pragma mark UIViewController delegate methods - (void)viewWillDisappear:(BOOL)animated
{
[self.imageView stopAnimating]; self.navigationController.navigationBar.barStyle = UIBarStyleDefault;
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
} - (void)viewWillAppear:(BOOL)animated
{
[self.imageView startAnimating];
self.navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque; [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleBlackOpaque;
} @end

首先通过加载多张图片进入imageView的animationImages里面。再设置动画的时间间隔animationDuration,并设置UISider控制幻灯片播放的速度,让图片像幻灯片那么播放。

2.UIWebView的讲解

(1)初始化

在.h文件中声明UIWebView。

@interface WebViewController : UIViewController {

IBOutlet UIWebView *webView;
} @property (nonatomic, retain) UIWebView *webView; @end

在.m文件中初始化UIWebView并载入要读取的URL,如下:

- (void)viewDidLoad {

NSString *urlAddress = @”http://www.google.com”;

//Create a URL object.
NSURL *url = [NSURL URLWithString:urlAddress]; //URL Requst Object
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; //Load the request in the UIWebView.
[webView loadRequest:requestObj];
}

并在你的delegate里面载入跟IB一起的XIB文件,如下:

- (void)applicationDidFinishLaunching:(UIApplication *)application {

self.wvTutorial = [[WebViewController alloc] initWithNibName:@”WebView” bundle:[NSBundle mainBundle]];

[window addSubview:[wvTutorial view]];

// Override point for customization after app launch
[window makeKeyAndVisible];
}

今天就讲UIImageView和UIWebView的利用,这两个都是比较有用的,在以后的开发中布局会经常用到,最后,谢谢大家支持。欢迎大家拍砖。

UIImageView 和 UIWebView 小结的更多相关文章

  1. Swift学习之熟悉控件

    最近是比较清闲一些的,对于一个开发者来说,这也是一个很好的充电机会.以前做项目都是使用Objective-C去开发,但我们都知道,Swift语言从2014年的出现到现在,一步一步变的完善,渐渐变的受欢 ...

  2. iOS-网络请求-AFN升级至AFN3.0

    AFNetworking是一款在OS X和iOS下都令人喜爱的网络库.为了迎合iOS新版本的升级, AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持. ...

  3. AFNetworking 3.0迁移指南

    AFNetworking是一款在OS X和iOS下都令人喜爱的网络库.为了迎合iOS新版本的升级, AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持. ...

  4. AFNetworking 新版本3.0的迁移

    AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持.如果项目以前使用过这些API,那么我们需要升级到基于 NSURLSession 的API的AFNet ...

  5. UI基础视图----UIScrollView总结

    UIScrollView是UIKit框架下的很重要的视图类,是UIView的子类.UILabel,UIImageView,UIWebView分别用于展示文字,图片,网页,UILabel通过属性text ...

  6. AFNetworking 3.0x版本最新特性

    AFNetworking是一款在OS X和iOS下都令人喜爱的网络库.为了迎合iOS新版本的升级, AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持. ...

  7. AFNetworking3.0的基本使用方法

    前一段时间在做项目的时候发现AFNetworking3.0已经被大众所接受,所以以后肯定会有很多程序猿朋友必须了解和转移至3.0了,这是我这段时间使用和学习总结出来的一些常用的知识点,希望对大家有用. ...

  8. Swift - 使用导航条和导航条控制器来进行页面切换

    通过使用导航条(UINavigationBar)与导航条控制器(UINavigationController)可以方便的在主页面和多层子页面之间切换.下面通过一个简单“组件效果演示”的小例子来说明如何 ...

  9. iOS编码规范(简版)

    1. 总体指导原则 [规则1-1]首先是为人编写程序,其次才是计算机. 说明:这是软件开发的基本要点,软件的生命周期贯穿产品的开发.测试.生产.用户使用.版本升级和后期维护等长期过程,只有易读.易维护 ...

随机推荐

  1. laravel 连接mongodb

    In this article we will see how to use MongoDB with Laravel (PHP framework). So first we need to ins ...

  2. 【WPF】MVVM前台绑定一组RadioButton按钮

    需求:制作一组RadioButton,像下面这样的效果: [MVVM]要显示一组RadioButton按钮,想法是Controller层联网获取到数据后,将数据进行处理,然后加到一个Observabl ...

  3. websocket 初步使用经验(python)

    想实现网页前端和后端的数据同步交互,就有必要使用 websocket 的方式进行通信. python websocket github 地址:git@github.com:Aplexchenfl/py ...

  4. SpringMVC @ModelAttribute 详解

    [@Controller]4 详解@ModelAttribute http://blog.sina.com.cn/s/blog_6d3c1ec601017q4p.html A.@ModelAttrib ...

  5. 使用DroneKit控制无人机

    DroneKit-Python是一个用于控制无人机的Python库.DroneKit提供了用于控制无人机的API,其代码独立于飞控,单独运行在机载电脑(Companion Computer)或其他设备 ...

  6. LINQ操作符四:排序操作符

    Linq中的排序操作符包括OrderBy.OrderByDescending.ThenBy.ThenByDescending和Reverse,提供了升序或者降序排序. 一.OrderBy操作符 Ord ...

  7. powerdesigner与mysql数据库的连接

    (1).在桌面新建一个mysql.dpc文件,里面可以什么内容也没有. (2).打开powerdesigner,操作如下: (3).把mysql.dcp文件选中: (4).建立连接属性: (5).测试 ...

  8. 消息中间件系列之ActiveMQ的简单安装

    本次测试使用一台ip为192.168.2.12的虚拟机 一.解压压缩包 tar -zxvf apache-activemq-5.14.4-bin.tar.gz 二.启动activemq 进入到bin目 ...

  9. e554. 在浏览器状态栏中显示信息

    // See also e551 精简的Applet applet.showStatus("Your Message Here"); Related Examples

  10. 一个不错的在线的js调试器

    一个不错的在线的js调试器,可见即可得: http://jsbin.com/