Android: محاذاة رأسية ل Edittext Multi Line (منطقة النص)
-
20-09-2019 - |
سؤال
أريد أن يكون لدي 5 خطوط لارتفاع منطقة النص. أنا أستخدم التعليمات البرمجية التالية.
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:singleLine="false"
android:lines="5"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip" />
تبدو منطقة النص بشكل جيد، ولكن المشكلة هي أن المؤشر وامض في منتصف حقل النص. أريدها أن وميض السطر الأول، في الطابع الأول من حقل النص.
المحلول
يستخدم android:gravity="top"
نصائح أخرى
هذا يشبه إجابة Commonsware ولكن مع قرص بسيط: android:gravity="top|left"
. وبعد مثال التعويض الكامل:
<EditText
android:id="@+id/EditText02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:lines="5"
android:gravity="top|left"
android:inputType="textMultiLine"
android:scrollHorizontally="false"
/>
يمكنك استخدام هذا Edittext .... هذا سوف يساعدك.
<EditText
android:id="@+id/EditText02"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:lines="5"
android:gravity="top|left"
android:inputType="textMultiLine" />
استخدم هذا:
android:gravity="top"
أو
android:gravity="top|left"
<EditText android:id="@+id/EditText02" android:layout_width="120dp"
android:layout_height="wrap_content" android:lines="5" android:layout_centerInParent="true"
android:gravity="top|left" android:inputType="textMultiLine"
android:scrollHorizontally="false" android:minWidth="10.0dip"
android:maxWidth="180dip" />
سوف تعمل
أعتقد أنه يمكنك استخدام layout:weight = 5
في حين أن android:lines = 5
لأنه عند قيامك بمنفذ تطبيقك إلى جهاز أصغر - يفعل ذلك بشكل جيد .. حسنا، ستحقق كلا السمات وظيفتك ..
الآن استخدام يوم الجاذبية start
هو أفضل choise:
android:gravity="start"
ل Edittext (TextArea):
<EditText
android:id="@+id/EditText02"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:lines="5"
android:gravity="start"
android:inputType="textMultiLine"
/>
لا تنتمي إلى StackOverflow