我可以使用一個UIPickerView與許多UITextFields,或者我應該創建多個pickerviews,每個UITextField(我有同一視圖中的所有UITextFields)?一個UIPickerView與多個文本域
1
A
回答
0
我覺得有多個文本框的Picker視圖就足夠了。您可以根據自己的需要輕鬆標記文本字段並對其進行處理。
Multiple sources for UIPickerView on textfield editing
將幫助您開始
2
請聲明此全球textFieldName:
NSString * textFieldName;
分配在didLoad:
- (void)viewDidLoad
{
[super viewDidLoad];
[pickerView setHidden:YES];
textFieldName=[NSString alloc]init];
pickerArray1 = [[NSMutableArray alloc] initWithObjects:@"apple", @"mango", @"banana", nil];
pickerArray2 = [[NSMutableArray alloc] initWithObjects:@"black", @"white", @"green", nil];
}
請textFieldName字符串設置文本字段名稱:
-(void)textFieldDidBeginEditing:(UITextField *)textField{
[pickerView setHidden:YES];
if (textField1.editing == YES)
{
textFieldName=textField1;
[pickerView setHidden:NO];
}
else
if (textField2.editing == YES)
{
textFieldName=textField2;
[pickerView setHidden:NO];
}
}
然後用這個textFieldName在pickerview方法來檢查:
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
{
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
{
if (textFieldName isEqualToString:@"textField1")
{
return [pickerArray1 count];
}
else
if (textFieldName isEqualToString:@"textField2")
{
return [pickerArray2 count];
}
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;
{
if (textFieldName isEqualToString:@"textField1")
{
return [pickerArray1 objectAtIndex:row];
}
else
if (textFieldName isEqualToString:@"textField2")
{
return [pickerArray2 objectAtIndex:row];
}
}
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
if (textFieldName isEqualToString:@"textField1")
{
textField1.text= [pickerArray1 addObjectAtIndex:row];
}
else
if (textFieldName isEqualToString:@"textField2")
{
textField2.text= [pickerArray2 addObjectAtIndex:row];
}
[pickerView setHidden:YES];
}
4
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
if (textField1.editing == YES)
{
textFieldName=textField1;
}
else
if (textField2.editing == YES)
{
textFieldName=textField2;
}
}
3
使用數組列表視圖,然後得到這個職位。
相關問題
- 1. 多個UIPickerView在同一個UIView
- 2. UIPickerView - 一個組件作爲圖像,另一個作爲文本
- 3. 使用多個UIPickerView
- 4. 多個uipickerview和uidatapicker
- 5. UIPickerView與2個NSMutableArrays?
- 6. 我有一個文本區域,將有多行文本
- 7. 如何使用UIPickerView在一個視圖中填充不同的文本域?
- 8. 多個插件域,一個htaccess文件
- 9. 添加多個文本文件的值必須檢索在一個文本域
- 10. SQL與多個文本框一樣
- 11. UIPickerView selectRow在多個組件順序(一個接一個)
- 12. 創建一個多輸入到單個輸出文本區域
- 13. 如何在文本區域中選擇(一個或多個)行
- 14. UIPickerView與日期只在一個方向
- 15. 移動一個UIPickerView
- 16. Javascript - 複製一個頁面上的多個文本區域的文本按鈕
- 17. 尋找一個可以做多個文本區域的jQuery文本計數器!
- 18. PHP寫txt文件與多個領域
- 19. UIPickerView與多行UILabel
- 20. UITableView上的多個UIPickerView
- 21. UIPickerView與2個組件
- 22. AS3多個文本域變得容易
- 23. 創建從一個文本文件與多個數據類型
- 24. 閱讀與多個標誌java的一個純文本文件
- 25. 當與另一個工作時,模糊其中一個UIPickerView行
- 26. UIPickerView:從另一個迅速文件
- 27. cakephp .htaccess與多個域
- 28. 如何將一個文本區域拆分爲兩個文本區域?
- 29. 使用一個UISegmentedControl使用一個UIPickerView
- 30. 與文本域
如果你有你的答案,然後點擊右鍵給出與答案 – dks1725 2011-04-12 11:36:13
好吧,但我不知道如何做到這一點。 – izan 2011-04-12 11:39:20
如何接受答案? – izan 2011-04-12 11:39:45