textView的提醒文字
如果我们想提交一些备注信息,会想到用textFiled和textView两种控件去实现
1.提醒文字是textFiled的特有属性,但是textFiled显示文本只有一行,不能实现我们输入较多文字的情况
2.textView可以自动适配多文字输入,但是没有提醒文字,这也不符合我们设计的需求
下面就有一种解决方法,话不多说,直接上代码
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #e44347 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #ffffff; min-height: 28.0px }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #93c96a }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #c2349b }
p.p5 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #ffffff }
p.p6 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #00afca }
span.s1 { color: #d28f5a }
span.s2 { }
span.s3 { color: #c2349b }
span.s4 { color: #ffffff }
span.s5 { color: #00afca }
span.s6 { color: #93c96a }
span.s7 { color: #8b84cf }
span.s8 { color: #e44347 }
#import "YSCreateScheduleRemarkView.h"
#import "Masonry.h"
@interface YSCreateScheduleRemarkView ()
@end
@implementation YSCreateScheduleRemarkView
- (instancetype)initWithFrame:(CGRect)frame {
if (self = [super initWithFrame:frame]) {
[self initUI];
}
return self;
}
- (void)initUI {
self backgroundColor = [UIColor whiteColor];
_textView = [[UITextView alloc] init];
_textView.font = [UIFont systemFontOfSize:15];
[self addSubview:_textView];
[_textView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.mas_top);
make.left.mas_equalTo(self.mas_left).offset(10);
make.bottom.mas_equalTo(self.mas_bottom);
make.right.mas_equalTo(self.mas_right).offset(-10);
}];
}
- (void)setplaceholder:(NSString *)placeholder {
UILabel *placeholderLabel = [[UILabel alloc] init];
placeholderLabel.text = placeholder;
placeholderLabel.numberOfLines = 1;
placeholderLabel.textColor = [UIColor lightGrayColor];
[placeholderLabel sizeToFit];
placeholderLabel.font = _textView.font;
[_textView addSubview:placeholderLabel];
[_textView setValue:placeholderLabel forKey:@"_placeholderLabel"];
}
@end
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #e44347 }
p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #ffffff; min-height: 28.0px }
p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #00afca }
p.p4 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #ffffff }
p.p5 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #c2349b }
p.p6 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px Menlo; color: #93c96a }
span.s1 { color: #d28f5a }
span.s2 { }
span.s3 { color: #c2349b }
span.s4 { color: #ffffff }
span.s5 { color: #93c96a }
span.s6 { color: #00afca }
span.s7 { color: #e44347 }
span.s8 { color: #8b84cf }
span.s9 { font: 24.0px "PingFang SC"; color: #e44347 }
#import "ViewController.h"
#import "YSCreateScheduleRemarkView.h"
@interface ViewController ()<UITableViewDataSource, UITableViewDelegate, UITextFieldDelegate, UITextViewDelegate>
{
UITableView *table;
}
@property (nonatomic, strong) YSCreateScheduleRemarkView *createScheduleRemarkView;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColorwhiteColor];
table = [[UITableView alloc]initWithFrame:[UIScreen mainScreen].bounds style:UITableViewStyleGrouped];
table.delegate = self;
table.dataSource = self;
[self.view addSubview:table];
[table registerClass:[UITableViewCell class] forCellReuseIdentifier:@"CreateScheduleCell"];
}
-(NSInteger) tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 4;
}
-(CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
return 0.01;
}
-(CGFloat) tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
{
return 135;
}
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
_createScheduleRemarkView = [[YSCreateScheduleRemarkView alloc] init];
_createScheduleRemarkView.textView.delegate = self;
[_createScheduleRemarkView setplaceholder:@"备注"];
return _createScheduleRemarkView;
}
-(UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CreateScheduleCell"];
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"CreateScheduleCell"];
cell.textLabel.text = @"12111";
return cell;
}
- (void)textViewDidBeginEditing:(UITextView *)textView {
[self showKeyboardManager:1]:
}
- (void)textViewDidEndEditing:(UITextView *)textView {
[self showKeyboardManager:0];
}
- (void)showKeyboardManager:(NSInteger)integer {
[UIView animateWithDuration:0.2f animations:^{
table.frame = CGRectMake(0, integer == 1 ? -44*4 : 0, 375, 667);
}];
}
textView的提醒文字的更多相关文章
- 解决TextView在显示文字的时候,一行还没显示满就跳到下一行
转载请注明:转自 http://blog.csdn.NET/u011176685/article/details/48295185 一.问题描述: Android的TextView在显示文字的时候,如 ...
- 设置TextView显示的文字可以复制
设置TextView显示的文字可以复制 效果图 在xml中设置 <TextView android:layout_width="wrap_content" android:l ...
- TextView 设置部分文字颜色及点击事件SpannableString
设置TextView中一部分文字的颜色及点击事件. SpannableString gotoMsgListStr = new SpannableString("消息列表"); go ...
- Android的TextView在显示文字的时候,如果有段中文有英文,有中文,有中文标点符号,你会发现,当要换行的时候遇到中文标点, 这一行就会空出很多空格出来
一.问题描述: Android的TextView在显示文字的时候,如果有段中文有英文,有中文,有中文标点符号,你会发现,当要换行的时候遇到中文标点, 这一行就会空出很多空格出来.原因是: 1) Tex ...
- Android中用TextView显示大量文字的方法
最近学习Android中,试着实现一个简单的显示新闻Demo的时候,遇到了一个问题:一条新闻的内容文字很多,放在TextView上面超出屏幕了,怎么破? 查了一下资料,找到了两种方法实现: 1. 只用 ...
- Android TextView设置多彩文字
在应用开发中时常会遇到需要在一段文字中插入几个不一样颜色文字的需求; 以前本人都是用多个TextView拼起来,不仅感觉很蠢,操作起来也蛮恶心; 直到接触到了SpannableStringBuilde ...
- android textview改变部分文字的颜色和string.xml中文字的替换(转)
转 :http://blog.csdn.net/ljz2009y/article/details/23878669 一:TextView组件改变部分文字的颜色: TextView textView ...
- Android中TextView中的文字设置为不同颜色
questionDesTextView=(TextView)findViewById(R.id.question_des); SpannableStringBuilder builder = new ...
- Android中动态更新TextView上的文字
示例代码: 1.新线程,定时更新文字 class testThread extends Thread{ public void run() { Message message = new Messag ...
随机推荐
- 实用的圆形图片控件ImageView
1.用法直接在布局中引用即可 import android.content.Context;import android.content.res.TypedArray;import android.g ...
- javascript中需要自行定义的函数
1.toString()与String() 使用方式:x.toString();-----String(x); String是万能的方法,而x.toString()则有局限性,无法将undefined ...
- 多值(in),范围值(between..and)
多值检测 关键词[in] 查出年龄是23,24,28 的人员信息 select * from T_Employee where FAge in (23,25,28) in 后面如果跟子查询, ...
- protobuf的编译安装
github地址:https://github.com/google/protobuf支持多种语言,有多个语言的版本,本文采用的是在centos7下编译源码进行安装. github上有详细的安装说明: ...
- WPF 自定义列表筛选 自定义TreeView模板 自定义ListBox模板
有很多项目,都有数据筛选的操作.下面提供一个案例,给大家做参考. 左侧是数据源,搜索框加TreeView控件,右侧是ListBox控件.在左侧数据列点击添加数据,然后点击确定,得到所筛选的数据. 下面 ...
- [python]set集合学习
python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和 ...
- pmd静态代码分析
在正式进入测试之前,进行一定的静态代码分析及code review对代码质量及系统提高是有帮助的,以上为数据证明 Pmd 它是一个基于静态规则集的Java源码分析器,它可以识别出潜在的如下问题:– 可 ...
- 平常看到的Alt+xx 快捷键用法
1. 先按Alt, 哪一个菜单对应的字符是有划线的. 2. 输入对应的字符打开相应的菜单, 3 再输入相应的字符打开子菜单
- Why many EEG researchers choose only midline electrodes for data analysis EEG分析为何多用中轴线电极
Source: Research gate Stafford Michahial EEG is a very low frequency.. and literature will give us t ...
- Lua的string和string库总结
Lua有7种数据类型,分别是nil.boolean.number.string.table.function.userdata.这里我总结一下Lua的string类型和string库,复习一下,以便加 ...