- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我的 View 中有 3 个选择器,其中一个仅包含图像。
因此,对于这个,我必须使用 viewForRow,但对于其他 2 个,它们是带标签的常见选择器,我需要 titleForRow,除非我使用 viewForRow,titleForRow 永远不会被调用。
我怎样才能让两个代表都被叫到我的课上?
这是我的:
- (UIView *)pickerView:(UIPickerView *)thePickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{
[[[objectPicker subviews] objectAtIndex:0] setHidden:YES];
[[[objectPicker subviews] objectAtIndex:5] setHidden:YES];
[[[objectPicker subviews] objectAtIndex:8] setHidden:YES];
return ; //will be implemented, but this will return the icons
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
[[[objectPicker subviews] objectAtIndex:0] setHidden:YES];
[[[objectPicker subviews] objectAtIndex:5] setHidden:YES];
[[[objectPicker subviews] objectAtIndex:8] setHidden:YES];
if (pickerView == self.timePicker) {
return [timeList objectAtIndex:row];
}
else if(pickerView == self.powerPicker) {
return [powerList objectAtIndex:row];
}
}
最佳答案
您不能在同一个委托(delegate)中同时拥有两者。解决方案是只实现 viewForRow:
并为文本列返回一个 UILabel 对象。将 label.text
设置为您在 textForRow:
中返回的字符串。
关于ios - 如何在同一类中为不同的选择器使用 viewForRow 和 titleForRow?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4229186/
我有一个 uipickerview,我试图用 coredata 数据库中的博士列表填充它。我正在 viewdidload 中加载博士列表,并通过 nslog 语句验证了它们的存在。在验证它们在那里之后
我想在我的项目中使用 UIPickerView,但是即使调用了 numberOfComponentsInPickerView 和 numberOfRowsInComponent,我的 titleFor
在我的 viewcontroller 类中,我有一个属性 UIViewPicker myPicker。在 didSelectRow 方法中(也由 UIPicker 委托(delegate)实现。我尝试
我的 View 中有 3 个选择器,其中一个仅包含图像。 因此,对于这个,我必须使用 viewForRow,但对于其他 2 个,它们是带标签的常见选择器,我需要 titleForRow,除非我使用 v
我的 Storyboard中有一个 UIPickerView。包含它的 UIViewController 设置了接口(interface)声明 @interface ContactDetail : U
我使用 UIPickerView 及其方法 pickerView(_:titleForRow:forComponent:) 来填充行。一切正常,我可以通过用户界面看到行。我想知道方法被调用了多少次 -
伙计们,我在实现 UIPickerview 的委托(delegate)方法时遇到问题。问题描述是,我想在 pickerview 中有 3 个组件,并且每个组件具有不同的行数。其代码如下 -(NSInt
我有一个 UIPickerView,它的数据源是一个 fetchedResultsController。 我的代理函数: func pickerView(pickerView: UIPicker
我正在尝试使用下面的 UIPickerViewDelegate 从我的数组中返回对象: var myArr = NSArray() 将对象添加到我的数组 self.myArray = NSArray(
祝大家有美好的一天 我尝试在主题行中解释我的查询。据我了解,从代码中看到,所有 pickerview 都在 ViewDidLoad() 中初始化,这意味着它们都有自己的数据集。作为数据验证的一部分(在
我已经标记了 PickerViews 1 和 2,但我在 func titleForRow 上收到“不会被执行”的消息,我该如何解决这个问题? @IBOutlet weak var shoeDetai
我是一名优秀的程序员,十分优秀!