我正在为某些文本字段使用自定义inputView,但是当我在文本字段上调用resignFirstResponder时,自定义输入视图不会忽略...任何建议?
UITextField *f=[[UITextfield alloc] init];
UIView *view=[[UIView alloc] initWithFrame..];
[f setInputView:view]; //random example of how to set a textfields input view to a custom view
Run Code Online (Sandbox Code Playgroud)
经过一些研究,只有在使用模态视图中呈现的viewController时才会出现此问题...否则正常工作...
谢谢
-Daniel
我为iPhone创建了一个自定义输入视图,并决定将其转换为在iPad上工作.我想让它显示为分离键盘,因为它只有几个键.问题是,iPad在当前版本的键盘中构建,使我的键盘在移除时显得很奇怪.如何防止我的自定义输入视图取消停靠或告诉iOS它是一个拆分键盘,因此它不会显示底部的行.

键盘是一个具有清晰背景颜色的UIView.由于UIView的子视图是键盘的两面.取消停靠后,在整个键盘的清晰UIView下会显示一条线.我想要摆脱这条线或防止脱离.
谢谢!
我曾经为我inputView展示uipickerview过textfield,但我也用它来做textfield其他功能.我如何能显示标准键盘我用后inputView为textfield?
textfield.inputView = pickrView;
Run Code Online (Sandbox Code Playgroud) 好的,这是我的应用程序在iOS 7.0中的样子:

现在在iOS 7.1中由于某种原因它看起来像这样:

正如你所看到的那样,而不是白色模糊的背景(绿色的东西实际上是绿色的UITextField下面),它现在是灰色模糊的背景 - 如果你仔细观察,绿色仍然是可见的.
经过大量的实验,我发现这是因为它下方有一层灰色的层UIPickerView.这是我将隐藏属性设置UIPickerView为YES时的结果:

代码非常简单:
_swimlanePicker = [[UIPickerView alloc] initWithFrame:CGRectZero];
_swimlanePicker.delegate = self;
_swimlanePicker.dataSource = self;
[_swimlanePicker setShowsSelectionIndicator:YES];
_swimlaneTextField.inputView = _swimlanePicker;
Run Code Online (Sandbox Code Playgroud)
你有什么想法我怎么能隐藏(或改变这个灰色层的颜色/透明度)?我喜欢旧的外观,并希望在iOS 7.1中实现它.
我有一个特定文本字段的自定义inputView,它运行良好.但是,我无法辨别如何关闭视图并恢复常规键盘.(我在TextField旁边有一个SWAP按钮.)我尝试将textfield的inputView设置为nil,但这没有做任何事情.
我不需要一个完整的自定义键盘,但我需要的不仅仅是键盘上方的附件视图,这就是我尝试这条路线的原因.除常规键盘外,我还需要大约20个自定义按钮,我不喜欢巨大的附件视图占用太多空间的想法.
在能够使用该应用程序之前,我也不想要求用户最初安装完整的自定义键盘.
非常感谢您的任何建议.
我的UI中有一个文本字段,当它被选中时会显示UIDatePicker而不是默认键盘,如何设置一个按钮,以便在用户完成时关闭选择器?
我创建了一个自定义键盘视图并将其链接到UITextField的inputView属性.当方向发生变化时,有没有办法改变自定义inputView的高度,并且像系统键盘一样平滑动画框架变得平滑?我的键盘尺寸是768x272,当设备走向横向时,尺寸变为1024x272,但我想让它变得像1024x372一样大.当我获得UIDeviceOrientationDidChangeNotification时,如果我使用下面的代码更改框架,则更改动画不平滑.
textField.inputView.frame = CGRectMake(0,0,1024,372);
Run Code Online (Sandbox Code Playgroud) 当用户点击UIButton时,我试图将UIDatePicker用作键盘。我能够使它与文本字段一起使用,但是我不喜欢如何显示光标,并且如果用户具有外部键盘,则用户可以输入任何文本。这是我的代码:
@IBAction func dateFieldStart(sender: UITextField) {
var datePickerStartView : UIDatePicker = UIDatePicker()
datePickerStartView.datePickerMode = UIDatePickerMode.Time
sender.inputView = datePickerStartView // error when sender is UIButton
}
Run Code Online (Sandbox Code Playgroud)
我尝试将发送方更改为UIButton,但在上面标记的行上给出了此错误:
Cannot assign to 'inputView' in 'sender'
Run Code Online (Sandbox Code Playgroud)
我已经尝试研究它,似乎没有人对此有问题。有谁知道如何使用UIButton触发UIDatePicker inputView或任何可能无法让用户键入的更好的东西?谢谢!
编辑 WKWebView 时是否有任何自定义 inputView 的方法?它没有像 UITextView 那样设置 inputView,但另一种方法可能是为整个应用程序加载自定义 inputViewController(自定义键盘)。我还没有找到强制在应用程序中的特定时间/地点使用 inputViewController 的方法。有没有办法做到这一点?
我有一个奇怪的错误,只发生在Xcode 6的iPhone 6模拟器中.我有一个通用组件,它扩展了UITextField并在屏幕底部显示了一个pickerView作为inputView.
如果我使用iPhone5或iPhone5s来测试我的应用程序,它正在按预期工作:inputView和inputAccessoryView正确显示.但是如果我切换到iPhone 6或Plus模拟器,屏幕底部只显示inputAccessoryView,则不显示inputView.
这是我的代码:
@interface DropDownTextField : UITextField
@property (strong,nonatomic) UIPickerView* pickerView;
@property (strong,nonatomic) UIToolbar *toolBar;
@property CGFloat originalFontSize;
@property (nonatomic) id<UIPickerViewDelegate> pickerDelegate;
@property (nonatomic) id<UIPickerViewDataSource> pickerDataSource;
- (CGFloat)requiredFontSize;
- (void)setDropdownMode:(BOOL)enabled;
@end
@implementation DropDownTextField
-(id)initWithCoder:(NSCoder *)aDecoder {
if(self = [super initWithCoder:aDecoder]) {
self.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
self.contentHorizontalAlignment = UIControlContentHorizontalAlignmentRight;
[self setFont:[UIFont mediumRegular]];
_originalFontSize = self.font.pointSize;
self.layer.borderWidth = 1.0f;
CGRect frame = [self frame];
// rightview dropdown arrow
UIImageView *dropDownImageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, (frame.size.height-8)/2, 14.0f, 8.0f)];
UIImage *dropDownImage = …Run Code Online (Sandbox Code Playgroud) inputview ×10
ios ×8
uitextfield ×5
keyboard ×2
objective-c ×2
swift ×2
uipickerview ×2
ios5 ×1
ios7.1 ×1
ipad ×1
uibutton ×1
uidatepicker ×1
uikeyboard ×1
wkwebview ×1
xcode ×1
xcode6 ×1