zoukankan      html  css  js  c++  java
  • Phone应用程序开发基础之一: IBOutlet与IBAction(转)

    在图形界面编程时,解决的第一问题就是如何将静态界面与代码关联起来,或者说是代码如何与界面上的对象

    通信, 代码如何操作界面上的对象。在iPhone平台上,引入了IBOutlet与IBAction。通过在变量前增加IBOutlet

    来说明该变量将与界面上的某个UI对象对应,在方法前增加IBAction来说明该方法将与界面上的事件对应.

     

    下面通过一个连接网络服务器(NetworkConnection)的例子来说明IBOutlet与IBAction。

    界面上有host 与 port 的Text Field UI对象,一个Button对象。

    所以代码中需要定义两个IBOutlet变量,分别用来定义host与port; 一个IBAction方法,用来发起连接动作。

     

    在NetworkConnectionViewController.h文件中:

    定义变量:

    @interface NetworkConnectionViewController : UIViewController {
        UITextField *host;
        UITextField *port;
    }

    将这两个变量说明为IBOutlet变量:

    @property(nonatomic, retain) IBOutlet UITextField *host;
    @property(nonatomic, retain) 
    IBOutlet UITextField *port;

     

    在NetworkConnectionViewController.m文件中增加:

    @synthesize host;
    @synthesize port;


    打开NetworkConnectionViewController.xib文件,拖两个Text Field对象到上面。

    按住Ctrl键,拖拽File's Owner到Text Field之上,会弹出Outlets选择列表,在列表中可以看到host与port。

    分别为两个Text Field选择Outlet变量。这样做了以后,界面上的Text Field对象就与程序中定义的变量就关联起来,

    当改变变量的属性时,就会显现在界面上。

    为了检验变量是否与界面对象关联,在viewDidLoad方法中给变量付值然后编译运行。

    - (void)viewDidLoad
    {
        [super viewDidLoad];
        host.text = @"192.168.1.100";
        port.text = @"8080";

    }

    运行后,可以在界面的Text Field中看到这些值,说明变量与界面对象关联正确。从而就可以在界面中看到变量的值。

     

    在NetworkConnectionViewController.h文件中增加一个IBAction方法:

    -(IBAction)connectNetwork;

    在NetworkConnectionViewController.m文件中实现该方法:

    -(IBAction)connectNetwork

       UIAlertView *alter = [[UIAlertView alloc] initWithTitle: @"Connection Network" message: @"sending command to the server" delegate: self cancelButtonTitle: @"OK" otherButtonTitles: nil];
        
        [alter show];
        [alter release];

    //connect network 

    //............

    打开NetworkConnectionViewController.xib,拖一个Round Rect Button到上面。
    然后按住Ctrl键,拖拽该button到File's Owner上,在弹出的IBAction列表中

    选择connectNetwork。这样当该button被按下弹起后就会调用connectNetwork方法。

    IBOutlet与IBAction是iPhone应用开发的基础,是成功迈向iPhone平台应用开发的第一步。

  • 相关阅读:
    .NET常见问题收集
    .NET 常用转换
    Android 百度地图开发setOnTouchListener方法给mapView设置了OnTouchListener后地图无法拖动的问题
    Android_参考
    常用操作
    Android开发笔记——Eclipse 关联Android源码
    Android开发笔记静态变量问题
    无法载入 mysql 扩展,<br />请检查 PHP 配置 解决办法
    服务器维护
    cocos2d 左下角三行
  • 原文地址:https://www.cnblogs.com/zhwl/p/2278233.html
Copyright © 2011-2022 走看看