IOS 10 এ UITextView শীর্ষে খালি স্থান




iphone xcode (12)

আমি সত্যিই আশ্চর্য যদি এটি একটি বাস্তব বৈশিষ্ট্য ... এই 64 বিন্দু স্বয়ংক্রিয় ইনসেট শুধুমাত্র ভিউ কন্ট্রোলার এর ভিউ সব সাবউইউস এর অধিক গভীরতা হিসাবে UIScrollView বা UITextView যখন যোগ করা হয়। উদাহরণস্বরূপ, যদি আপনি পিছনে একটি ভিউ যোগ করেন (এখানে আমি z-buffer সম্পর্কে কথা বলছি, ইমব্রিকেশনটি দেখি না) স্ক্রোল ভিউ, এই 64 পয়েন্ট ইনসেট স্বয়ংক্রিয়ভাবে যোগ করা হয় না।

উদাহরণস্বরূপ, এই এক অন্তর যোগ করে:

এই ক্ষেত্রে, ইনসেট যোগ করা হয় না:

এটি সত্যিই আমার কাছে অদ্ভুত বলে মনে হচ্ছে ... কেন ওপরে দৃষ্টিভঙ্গি বাড়ানো উচিত কিনা তা নির্ধারণের জন্য ওএস কীভাবে গভীরতা দেখাবে?

আমি এটা কিছু টেক্সট সঙ্গে UITextView আছে। সবকিছুই iOS 6 এর সাথে জরিমানা ছিল তবে এখন iOS 7 এর সাথে এটি ফাঁকা স্থানটি ছেড়ে দেয় এবং তারপরে পাঠ্যক্ষেত্রের মাঝখানে পাঠ্যটি রাখে।

আমি কোন কন্টেন্ট সেট করা হয়নি OffSet। সাহায্য করুন!


এটি একটি অপ্রাসঙ্গিক সমাধান, আমি নিশ্চিত ... কিন্তু কেবল পাঠ্যক্ষেত্রের পিছনে একটি ফাঁকা লেবেল রেখে সমস্যাটিকে সমাধান করে।


আপনি যোগ করে আপনার UITextView উপরে ফাঁকা স্থান মুছতে পারেন:

yourTextView.textContainerInset = UIEdgeInsetsZero;

দ্রুত (এক্সকোড 6)

 self.automaticallyAdjustsScrollViewInsets = false

আমি নিম্নলিখিত কৌশল চেষ্টা, এটা কাজ।

- (void)viewDidLoad{
   self.textView.scrollEnabled = NO;  
}       
- (void)viewDidAppear:(BOOL)animated {
   [super viewDidAppear:animated];
   self.textView.scrollEnabled = YES;
}

ইন্টারফেস বিল্ডার ইন,

  • ভিউ কন্ট্রোলার নির্বাচন করুন যা UITextView রয়েছে।
  • বৈশিষ্ট্য পরিদর্শক যান।
  • আনলক করুন "স্ক্রোল ভিউ ইন্সটল সামঞ্জস্য করুন।"

আমি একটি নেতিবাচক মান কন্টেন্ট অফসেট সেট করে এই সমস্যা সমাধান। এখানে সুইফ্ট কোড।

yourTextView.setContentOffset(CGPoint(x: 0, y: -150), animated: true)

সুইফ্ট জন্য সমাধান 4:

textView.textContainerInset = UIEdgeInsets.zero

IronManGill দেওয়া বর্তমান উত্তরটি কোনও ভাল সমাধান নয় কারণ এটি প্রথম সমস্যাটি কেন ঘটে তা বোঝার ভিত্তিতে নয়।

jrturton এর উত্তর এটি সমাধানের সবচেয়ে পরিষ্কার উপায় নয়। আপনি ওভাররাইড করতে হবে না। সহজবোধ্য রাখো!

আপনার যা দরকার তা হল নীচের সেট করা:

self.automaticallyAdjustsScrollViewInsets = NO;

ViewDidLoad পদ্ধতি দেখুন।

ডক্সগুলি দেখুন: https://developer.apple.com/documentation/uikit/uiviewcontroller/1621372-automaticallyadjustsscrollviewin


Interface Builder যান:

  1. আপনার text view ধারণকারী view controller নির্বাচন করুন
  2. Adjusts Scroll View Insets সম্পত্তি Adjusts Scroll View Insets


এটা আমার জন্য কাজ করেছে

textView.textContainerInset = UIEdgeInsetsZero;  
textView.textContainer.lineFragmentPadding = 0;

একটি পাঠ্য দৃশ্য একটি স্ক্রল ভিউ। দেখুন কন্ট্রোলার দৃশ্যগুলি স্ক্রোল করার জন্য স্বয়ংক্রিয়ভাবে অফসেট যুক্ত করবে, এটি ধরে নেওয়া হয়েছে যে তারা নেভি বার এবং স্ট্যাটাস বারের পিছনে স্ক্রোল করতে চাইবে।

এটি রোধ করার জন্য, নিম্নলিখিত ভিউটি কন্ট্রোলারটিতে পাঠ্য ভিউ ধারণ করে সেট করুন:

self.automaticallyAdjustsScrollViewInsets = NO




uitextfield