سؤال

ربما بعض الخلفية: أحاول الحصول على عرض لوحة مفاتيح محددة فوق شاشة كاملة قابلة للتمرير EditText عندما ينقر عليها المستخدم. المشكلة هي أنه إذا كان المؤشر في أسفل EditText يتم إخفاءه بواسطة عرض لوحة المفاتيح.

الاختلاف الواضح لمواجهة IME-View العادية هو أن الرؤية IME-VION تدفع EditText إلى الأعلى ويتيح للمستخدم التمرير بأكمله EditText في تلك المنطقة العلوية. تقع عرض لوحة المفاتيح في الأسفل. كل شيء مرئي ويمكن الوصول إليه. هذا ما أريد تحقيقه مع المنبثقة أيضًا.

لذلك ، سؤالي هو: كيف يبدو التصميم عندما يكون IME العادي مرئيًا؟ لا أحتاج إلى الرسوم المتحركة (إذا كان من الصعب القيام بذلك ، يمكنني تخطي هذا الجزء).

حاولت حلقة التسلسل الهرمي للتخطيط لمعرفة ما هو مختلف. هذا هو مع مرئي IME:

root: com.android.internal.policy.impl.PhoneWindow$DecorView
  android.widget.LinearLayout
    android.widget.FrameLayout
      android.widget.TextView
    android.widget.FrameLayout               #1
      android.widget.RelativeLayout
        android.widget.ScrollView
          android.widget.EditText
        com.mytest.KeyboardView

هنا هو بدون IME ورؤية المنبثقة الخاصة بي مرئية:

root: com.android.internal.policy.impl.PhoneWindow$DecorView
  android.widget.LinearLayout
    android.widget.FrameLayout
      android.widget.TextView
    android.widget.FrameLayout               #1
      android.widget.RelativeLayout
        android.widget.ScrollView
          android.widget.EditText
        com.mytest.KeyboardView

من الواضح ، لا يوجد فرق. هل IME مفقود حقًا؟

من أجل فهم أسهل ، قمت بتمييز تطبيقي بـ "#1" ، لذا فإن RelativeLayout هو عنصر الجذر في بلدي XML-layout.

هل يمكن لأي شخص مساعدتي؟ إذا كان لدى شخص ما تخطيط على طراز XML جاهز ، سأكون أكثر من سعيد لرؤيته.

تحديث

الآن أعتقد أنني كنت مخطئًا في التفكير في أن الرؤية IME ستضع نفسها في التسلسل الهرمي للتخطيط للنشاط.

في غضون ذلك كنت أحاول صنع ملف PopupWindow العمل ، ولكن لم يستطع التوصل إلى شيء من شأنه إصلاح المشكلة مع المؤشر المخفي في EditText.

لذلك ، اسمحوا لي أن أسأل هذا: كيف تظهر عرض IME أو كيف يتم نسجها في الشاشة الكلية؟ كيف يتم التمرير نفسه أسفل حقل التحرير ويحرك حقل التحرير لأعلى ويجعله التمرير بالطريقة التي تعمل بها؟

هل كانت مفيدة؟

المحلول

يبدو أن IME لا يمكن الوصول إليها. أو على الأقل لا يمكن الوصول إليه بأي شكل من الأشكال بواسطة التطبيق.

لدي الآن رؤية ثابتة إلى حد ما EditText ولوحة المفاتيح. لوحة المفاتيح لا تحوم في الشاشة ولا هي أي أشياء خيالية أخرى. تم تركيبه أسفل EditText. هذا هو. لا يبدو مذهلاً أو أي شيء ، لكننا اتفقنا هنا على أن المستخدم ربما لن يدخل قصصًا طويلة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top