Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> UITextView的使用

UITextView的使用

編輯:關於Android編程

UITextView與UITextField功能類似,也是字符輸入的視圖控件。

區別在於:

1、UITextView是多行字符輸入,可通過回車鍵進行換行輸入

2、也可以設置固定高度的范圍,輸入多行字符,然後通過上下滾動顯示輸入的字符

3、無左,或右間距視圖

4、無清除按鈕視圖

 
  1. UITextView*textview001=[[UITextViewalloc]initWithFrame:CGRectMake(10.0,50.0,300.0,80.0)];
  2. //view的屬性
  3. //添加到父視圖
  4. [self.viewaddSubview:textview001];
  5. //背景顏色
  6. textview001.backgroundColor=[UIColorcolorWithWhite:0.0alpha:0.3];
  7. //圓角設置
  8. textview001.layer.cornerRadius=5.0;
  9. textview001.layer.masksToBounds=YES;
  10. //邊框設置
  11. textview001.layer.borderWidth=1.0;
  12. textview001.layer.borderColor=[UIColorblackColor].CGColor;
  13. //字體屬性設置
  14. textview001.textColor=[UIColorbrownColor];
  15. textview001.textAlignment=NSTextAlignmentRight;
  16. textview001.font=[UIFontsystemFontOfSize:12.0];
  17. //鍵盤類型
  18. textview001.keyboardType=UIKeyboardTypeASCIICapable;
  19. //回車鍵類型
  20. textview001.returnKeyType=UIReturnKeyNext;
  21. //回車鍵響應條件,有輸入時才能響應,默認為NO,即沒有限制
  22. textview001.enablesReturnKeyAutomatically=NO;
  23. //改變輸入源視圖,默認是鍵盤
  24. UIImageView*inputImageView=[[UIImageViewalloc]initWithFrame:CGRectMake(0.0,0.0,CGRectGetWidth(self.view.bounds),100.0)];
  25. inputImageView.image=[UIImageimageNamed:@"inputImage"];
  26. textview001.inputView=inputImageView;
  27. //改變鍵盤上方的子視圖
  28. UIButton*accessoryButton=[[UIButtonalloc]initWithFrame:CGRectMake(0.0,0.0,CGRectGetWidth(self.view.bounds),40.0)];
  29. accessoryButton.backgroundColor=[UIColorredColor];
  30. [accessoryButtonsetTitleColor:[UIColorblackColor]forState:UIControlStateNormal];
  31. [accessoryButtonsetTitleColor:[UIColoryellowColor]forState:UIControlStateHighlighted];
  32. [accessoryButtonsetTitle:@"隱藏鍵盤"forState:UIControlStateNormal];
  33. [accessoryButtonaddTarget:selfaction:@selector(hiddionKeyboard)forControlEvents:UIControlEventTouchUpInside];
  34. textview001.inputAccessoryView=accessoryButton; 
  35. //隱藏鍵盤的按鈕方法
  36. -(void)hiddionKeyboard
  37. {
  38. //方法1
  39. //[textViewendEditing:YES];
  40. //方法2
  41. //[textViewresignFirstResponder];
  42. //方法3
  43. //[self.viewendEditing:YES];
  44. //方法4
  45. [[UIApplicationsharedApplication].keyWindowendEditing:YES];
  46. }
  47. /*
  48.  
  49. 設置代理
  50. 1、設置UITextView代理方法的響應者
  51. 2、添加協議
  52. 3、實現代理方法
  53. */
  54. textview001.delegate=self
  55. //添加協議
  56. @interfaceViewController()
  57.  
  58. @end
  59.  
  60. //實現代理方法UITextViewDelegate
  61. -(BOOL)textViewShouldBeginEditing:(UITextView*)textView
  62. {
  63. //即將開始編輯
  64. NSLog(@"即將開始編輯");
  65.  
  66. returnYES;
  67. }
  68.  
  69. -(BOOL)textViewShouldEndEditing:(UITextView*)textView
  70. {
  71. //即將結束編輯
  72. NSLog(@"即將結束編輯");
  73.  
  74. returnYES;
  75. }
  76.  
  77. -(void)textViewDidBeginEditing:(UITextView*)textView
  78. {
  79. //已經開始編輯
  80. NSLog(@"已經開始編輯");
  81. }
  82.  
  83. -(void)textViewDidEndEditing:(UITextView*)textView
  84. {
  85. //已經結束編輯
  86. NSLog(@"已經結束編輯");
  87. }
  88.  
  89. -(BOOL)textView:(UITextView*)textViewshouldChangeTextInRange:(NSRange)rangereplacementText:(NSString*)text
  90. {
  91. //正在編輯
  92. NSString*string=[textView.textstringByReplacingCharactersInRange:rangewithString:text];//NSString*string=textView.text;
  93. NSLog(@"正在編輯%@",string);
  94.  
  95. /*
  96. 通常用途
  97. 1、判斷回車鍵,結束編輯
  98. 2、限制規定字符的輸入
  99. 3、限制長度字符的輸入
  100. */
  101.  
  102. if([textisEqualToString:@"\n"])
  103. {
  104. //結束編輯,即隱藏鍵盤
  105. [selfhiddionKeyboard];
  106.  
  107. returnNO;//表示不能輸入,反之則可輸入
  108. }
  109.  
  110. returnYES;
  111. }
  112.  
  113. -(void)textViewDidChange:(UITextView*)textView
  114. {
  115. //正在編輯的改變
  116. NSLog(@"正在編輯的改變");
  117. }

     

    \
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved