我正在创建一个使用文本视图的应用程序.现在我希望文本视图的占位符类似于您可以为文本字段设置的占位符.你会如何使用swift实现这一目标.
有谁知道如何做到这一点?
我正在开发一个用户必须写一些信息的应用程序.为此,我需要一个UITextField
多线(通常UITextField
是一条线).
当我在Google上搜索时,我找到了一个使用UITextView
而不是UITextfield
为此目的的答案.
我使用文本视图作为评论作曲家.
在属性检查器中,我找不到任何类似边框样式属性的东西,以便我可以使用圆角矩形,类似于UITextField
.
所以,问题是:如何风格UITextView
像一个UITextField
带有圆角的矩形?
有没有人知道UITextField
默认情况下占位符文本的颜色是什么?我正在尝试将UITextView
文本设置为相同的颜色.我在其他地方读到UIColor.lightGrayColor()
它确实有点轻松了.
有没有办法在UITextView
类似的地方插入一个占位符UITextField
?如果是,那么请发送任何链接或任何想法来实现此功能.
嗨我正在使用iPhone应用程序,我知道UITextfield有占位符属性.但是UITextview没有占位符属性.我知道如何为UITextview自定义占位符的过程.但请让我知道其中的区别.
和UITextfield继承自UIControl,其内容继承自UIView ... NSObject.和UITextview继承自UIScrollView,UIView,UIresponder ...... NSOBject.但是,持有人财产的区别在哪里.
textfield如何包含占位符属性,为什么textview不包含占位符?
请提出任何想法,建议和/或给出更好的解释.
可能重复:
UITextView中的占位符
在iPhone App中如何添加placeHolder Text(以保存一些默认文本)UItextView
?
我的问题是以编程方式设置UITextView的selectedRange 选择文本,但不能直观地指示它被选中.这听起来像OS 3.0/3.1中的错误.更重要的是,任何解决方案或建议选择显示?(消息底部链接的示例项目)
我怎么知道它被选中,因为我没有得到视觉反馈?两个原因:
我在viewcontroller中有一个UITextView,它允许编辑用户可更改的值.当在表格行上接收到双击时,或者用户点击一行上的详细信息公开按钮时,将打开编辑器控制器.viewcontroller通过presentModalViewController到达,并在编辑器的VC的viewWillAppear方法中启动键盘[self.textView becomeFirstResponder];
有时我想启动编辑器,选择textview的全部内容,这样用户就可以简单地开始输入,它会删除现有的内容(这是因为我创建了带有默认标题的新项目,因此几乎可以肯定用户将首先删除编辑器文本字段的全部内容,然后键入其标题).
我已经尝试过的一些事情:
[[_textView webView] selectAll];
(私人api).相同的行为,文本被选中,没有视觉反馈. // UITextFieldDelegate Methods...
- (void)textViewDidBeginEditing:(UITextView *)_textView
{
NSInteger len = [_textView.text length];
if( self.selectInitialText ){
//NOTE: this is not working as expected. Indeed the text is
// selected but the highlighting of the text isn't showing.
_textView.selectedRange = NSMakeRange(0,len);
}
}
Run Code Online (Sandbox Code Playgroud)
- 编辑 -
这是提交给Apple BugReporter的示例项目.下载BugReport_7380723示例项目
附加信息:
在创建和播放示例项目提交时,我发现了两件事:
当选择了文本但没有显示突出显示时,点击一些按键然后"摇动撤消"并恢复原始文本 …
可能重复:
UITextView中的占位符
我对iOS比较陌生,我不知道如何用英语调用它,但我想创建一些UITextViews
包含说明或预填充文本的内容,例如"在此输入您的姓名",或"键入您的手机"等,用浅色文本编写,但当用户选择文本视图开始输入它们包含的提示时,它们就会消失.
是否有任何示例/教程等我可以关注以了解更多信息?
我如何在iOS中这样做?
我有一些Swift 3代码来解码iOS Objective-C协议(有一个Swift对应版本)。在总结完Swift 3反射后,我发现反射还不够完善,无法满足我的需要,我偶然发现了objc运行时方法protocol_copyMethodDescriptionList()
,该方法返回以下C结构的数组:
struct objc_method_description
SEL name;
char *types;
};
Run Code Online (Sandbox Code Playgroud)
该代码获取协议选择器名称的列表,但不确定在该type
字段中返回什么。我对如何正确解码objc_method_description.type
值感到困惑。
什么我得到在该type
领域是一个神秘的格式,例如,"B48@0:8@16{_NSRange=QQ}24@40"
起初我还以为是在我是如何转换C字符串的一个问题,但一些研究之后,我怀疑它实际上是参数的编码,类似Java的JVM如何传递方法签名。但是我仍然没有参考来解码它。
import UIKit
class ViewController: UIViewController, UITextViewDelegate {
@IBOutlet weak var noteView : UITextView!
func decodeProto() {
var methodCount : UInt32 = 1
if let methodList = protocol_copyMethodDescriptionList(UITextViewDelegate.self,
false, true, UnsafeMutablePointer<UInt32>(&methodCount)) {
for i in 0..<Int(methodCount) {
let methodDesc = methodList[i];
let name = methodDesc.name
let types = String(validatingUTF8: methodDesc.types)
print("\(name) \(types)")
}
}
}
override …
Run Code Online (Sandbox Code Playgroud) 我在iOS应用程序中使用textview,但是当我在textview中设置占位符时,我遇到了一些问题,当在textview中单击时文本不会隐藏,因此可以在textview中处理占位符的任何人
ios ×6
iphone ×6
uitextview ×6
objective-c ×4
cocoa-touch ×2
swift ×2
uitextfield ×2
ios4 ×1
ios5 ×1
ios5.1 ×1
ios7 ×1
ipad ×1
placeholder ×1
uicolor ×1
xcode ×1