لاحظت أن Discourse تمكنت بطريقة ما من حساب الموقع العلوي للوحة المفاتيح الافتراضية على iOS.
هذا أمر مهم إذا كنت تريد وضع عنصر ما مباشرة فوق لوحة المفاتيح الافتراضية، مثل حقل الإدخال الذي أكتب فيه حاليًا.
لا يُعد هذا مشكلة على أجهزة أندرويد، حيث يتم دفع العناصر ذات التموضع الثابت (position: fixed) تلقائيًا إلى أعلى اللوحة البصرية للوحة المفاتيح عند إظهارها.
لقد اختبرت حقل الإدخال نفسه على جهاز يعمل بإصدار iOS 12.1، ويبدو أن Discourse تمكنت من تكرار السلوك المطلوب حتى على إصدارات Safari غير المدعومة من iOS.
هل يمكن لأحد أن يوجهني نحو الحل الصحيح لتحقيق نفس النتيجة؟ سأكون ممتنًا جدًا لذلك
يمكنني تخيّل أن الأمر يشبه تسلّق جبل من الحيل. لقد كدتُ أحطم رأسي في هذه المشكلة لعدة أيام، لذا أنا مستعدٌ ومستعدٌ تمامًا لتسلّق ذلك الجبل بكل سرور ..
لقد اضطررتُ بالفعل إلى وضع حيلة غير أنيقة لمنع متصفح سفاري على الجوال من رفع الشريط العلوي الثابت عند التركيز على حقل إدخال. في الواقع، أعتقد أن الأمر لن يكون أسوأ بكثير مما اضطررتُ إلى فعله هناك لتحقيق ذلك
كانت هذه الحيلة السيئة تتمثل في نزع العناصر من أماكنها الثابتة عند حصول مربع النص على التركيز، وإخفاء كل شيء في الصفحة. ثم إعادتها عند فقدان مربع النص للتركيز.
كانت غريبة للغاية. لذا، أنا سعيد لأن @pmusaraj قد قدّم تطبيقًا أكثر متانة بكثير.
لقد ألقيت نظرة سريعة على حلك البديل، ويبدو أنك اعتمدت على تحديد أحجام جميع أحجام لوحات المفاتيح الممكنة بشكل ثابت؟
عندما يتم تعطيل الاقتراحات التلقائية، يتغير حجم لوحة المفاتيح، فكيف يتعامل النظام مع ذلك؟
لم أكن أعرف أن عدد المستخدمين الذين لا يزالون يستخدمون iOS 12 قليلًا بهذا القدر. هل أنت متأكد من أن نسبة 5% فقط من المستخدمين ما زالوا يستخدمون iOS 12 أو إصدارات أقدم؟ في هذه الحالة، قد يكون من إضاعة الوقت التركيز على تلك المشكلة تحديدًا.
لقد قمت بالتحقق على جهاز iPhone 6 يعمل بنظام iOS 2.14
تعمل طريقة الحل البديلة بشكل مثالي عند تمكين الاقتراحات التلقائية… أما عند تعطيل الاقتراحات التلقائية، يظل هناك فراغ… ولكن كما ذكرت بالفعل، فإن عدد المستخدمين العالقين على نظام iOS 12 ضئيل جدًا… وهو أقل بكثير بالنسبة للمستخدمين العالقين على نظام iOS 12 مع تعطيل الاقتراحات التلقائية.
لذا فإن إصلاحك هو الأفضل الذي يمكن تخيله. شكرًا لمشاركتك!