【问题标题】:how to get the label value using button action in iOS如何在 iOS 中使用按钮操作获取标签值
【发布时间】:2014-03-03 11:36:09
【问题描述】:

我想通过在 iOS 中使用 uicollectionviewcell 执行按钮操作来获取标签值。我有四个标签作为子视图添加到 uicollectionviewcell 中的 uibutton。如何使用按钮操作获取选定的索引 uilabel 值。

【问题讨论】:

  • [UICollectionView indexPathsForSelectedItems]?对我来说看起来很微不足道。
  • 请给我示例代码,我是 iPhone 新手...
  • 没有。你尝试一个解决方案,如果你不能让它工作,你会发回。
  • 请展示你到目前为止所做的尝试
  • 通过使用uicollectionview的ibaction方法获取选中的索引uilabel值。

标签: iphone uicollectionviewcell ios6.1


【解决方案1】:

您必须创建一个从 UICollectionViewCell 子类化的自定义集合视图单元类。在该类中,您可以从情节提要创建标签和按钮。

   #import <UIKit/UIKit.h>

   @interface AudioListViewCell : UICollectionViewCell

   @property (retain, nonatomic) IBOutlet UILabel *lbl1;

   @property (retain, nonatomic) IBOutlet UILabel *lbl2;

   @property (retain, nonatomic) IBOutlet UILabel *lbl3;

   @property (retain, nonatomic) IBOutlet UIButton *button;

   @end

将故事板中collectionview单元格的类名更改为自定义单元格类名。这里是AudioListViewCell。

在集合视图委托方法“didSelectItemAtIndexPath”的视图控制器中,您可以获得标签文本 vlaue。这是一种方法。 如果要在按钮单击中获取标签文本,则必须在 collectionvew 单元格中为按钮添加选择器,并且每个按钮标记值与集合视图索引相同。然后您可以使用以下代码获取按钮内的每个标签。

     for (UILabel * lbl in button.subviews) {

        if(lbl1.tag == uniqueLabelTag1)strVal1=  lbl1.text;

        else if(lbl2.tag == uniqueLabelTag2)strVal2= lbl2.text;

        else if (lbl3.tag == uniqueLabelTag3) strVal3 = lbl3.text;

     }

您可以从按钮标签创建标签标签,即。例如,如果您的第一个集合视图单元格的按钮标签是 1,那么您的 lbl1 标签可以是 1100,lbl2 标签可以是 1200,lbl3 标签可以是 1300。如果第二个按钮标签是 2,那么 lbl1 标签可以是 2100,lbl2 可以是 2200,lbl3 标签可以2300等。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-05
    • 2020-09-03
    • 1970-01-01
    相关资源
    最近更新 更多