zoukankan      html  css  js  c++  java
  • xib中的view的子控件赋值方法

    给xib中的子控件赋值的方法有3种:

    1、通过UIview的subviews来获取想要赋值的子控件,然后给获取到的控件赋值就行:

     UIImageView *imageView = appInfoView.subviews[2];
     imageView.image = [UIImage imageNamed:@"icon_00"];

    上面的代码中的appInfoView是xib中的一个view的实例,里面有一个image View子控件,一个button子控件和一个Label子控件,其中imageView子控件在最后。

    subviews是UIview的一个属性,类型为NSArray ,用来存放UIview的子控件,通过subviews的getter方法可以得到view中的所有子控件的集合,集合的第二个索引值存放有xib中的view的imageView子控件,拿到子控件后给它赋值就行。

    2、通过Tag来获取子控件,再赋值:

     UILabel *label = [appInfoView viewWithTag:12];
     label.text = @"appName";

    在xib中设置子控件的Tag值,通过UIview的方法viewWithTag:来获取想要的子控件;

    在上面的代码的程序中,xib中的view的一个label的子控件的Tag值被设置为12,通过方法viewWithTag:12就能得到label子控件,赋值为appName。

    3、自定义一个UIView的子类,把xib中的view的子控件Outlet连接到自定义view类中,通过自定义view的实例来获取想要赋值的子控件

     XCAppInfoView *appInfoView   = [[[NSBundle mainBundle] loadNibNamed:@"AppInfoView" owner:nil options:nil] lastObject];
     appInfoView.appImageView.image = [UIImage imageNamed: [self.appInfos[i] valueForKey:@"icon"]];
     appInfoView.appNameLabel.text = [self.appInfos[i] valueForKey:@"name"];

    XCAppInfoView 是UIView的一个子类,里面有两个属性appImageView 和appNameLabel 分别对应AppInfoView.xib中的一个view的子控件ImageView和Label

  • 相关阅读:
    机器学习:逻辑回归(基础理解)
    机器学习:模型泛化(L1、L2 和弹性网络)
    机器学习:模型泛化(LASSO 回归)
    机器学习:模型泛化(岭回归:Ridge Regression)
    Numpy:np.random 的使用
    ASP.NET MVC 视图层-生成链接相关(Html.ActionLink,Url.Action)
    eval实例
    <a>实现按钮的javascript+jquery编程实例
    SQL Server之XML PATH()
    分页数算法
  • 原文地址:https://www.cnblogs.com/panxiaochun/p/5023757.html
Copyright © 2011-2022 走看看