代碼未上尔觉,效果先行
當(dāng)然,底部的按鈕是可以靈活配置的芥吟,最多三個(gè)(左邊一個(gè)侦铜,右邊兩個(gè))
how to use
- (void)setupUI
{
CGFloat screenW = [UIScreen mainScreen].bounds.size.width;
CGFloat screenH = [UIScreen mainScreen].bounds.size.height;
self.inputView = [DifferInputView InputViewWithFrame:CGRectMake(0, screenH - 44, screenW, 44) limitLength:100 leftImage:@"icon_like_down" middleImage:nil rightImage:@"icon_like_down" buttonClickBlock:^(NSInteger index) {
NSLog(@"%ld",index);
// index 0:點(diǎn)擊了左邊的按鈕,即使左邊的圖片傳空运沦,不顯示左邊的按鈕泵额,index為0也表示點(diǎn)擊了左邊的按鈕,一次內(nèi)推携添,1表示點(diǎn)擊了中間的按鈕嫁盲,2表示點(diǎn)擊了右邊的按鈕
} returnClick:^(NSString *result) { //點(diǎn)擊鍵盤上的return按鈕
NSLog(@"%@",result);
self.textResult.text = result;
}];
[self.view addSubview:self.inputView];
}
最后看一下頭文件
#import <UIKit/UIKit.h>
typedef void(^ButtonClickBlock)(NSInteger index);
typedef void(^ReturnClickBlock)(NSString *result);
@interface DifferInputView : UIView
/*
1.注意命名要求,@"leftImageName" 高亮則為:@"leftImageName_pre" 目的是為了少傳幾個(gè)參數(shù)烈掠。若傳nil,則表示隱藏該按鈕
2.限制 字符數(shù) 為-1羞秤,則表示 沒有限制
3.textview的returnType 為send
*/
+ (instancetype)InputViewWithFrame:(CGRect)frame limitLength:(NSInteger)length leftImage:(NSString *)leftImage middleImage:(NSString *)midImage rightImage:(NSString *)rightImage buttonClickBlock:(ButtonClickBlock)callBack returnClick:(ReturnClickBlock)returnCallBack;
//獲取 textview輸入的內(nèi)容,有時(shí)不一定在return時(shí)獲取到
@property (nonatomic,copy)NSString *result;
@end
更新左敌。瘾蛋。。新增 占位文字
使用方面:只有初始化的類方法有變化
#import <UIKit/UIKit.h>
typedef void(^ButtonClickBlock)(NSInteger index);
typedef void(^ReturnClickBlock)(NSString *result);
@interface DifferInputView : UIView
/*
1.注意命名要求矫限,@"leftImageName" 高亮則為:@"leftImageName_pre" 目的是為了少傳幾個(gè)參數(shù)哺哼。若傳nil,則表示隱藏該按鈕
2.placeString 占位文字
3.限制 字符數(shù) 為-1佩抹,則表示 沒有限制
4.textview的returnType 為send
*/
+ (instancetype)InputViewWithFrame:(CGRect)frame placeHolder:(NSString *)placeString limitLength:(NSInteger)length leftImage:(NSString *)leftImage middleImage:(NSString *)midImage rightImage:(NSString *)rightImage buttonClickBlock:(ButtonClickBlock)callBack returnClick:(ReturnClickBlock)returnCallBack;
//獲取 textview輸入的內(nèi)容,有時(shí)不一定在return時(shí)獲取到
@property (nonatomic,copy)NSString *result;
@end