سؤال

ها هو تخطيطي

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
          android:layout_width="fill_parent" android:id="@+id/LinearLayout01"
         android:layout_height="wrap_content">

    <Spinner android:text="@+id/AutoCompleteTextView01"
                       android:id="@+id/Spinner01"
                       android:layout_width="wrap_content"
                       android:layout_height="wrap_content"
                       android:width="130dp"></Spinner>
    <EditText android:layout_height="wrap_content"
              android:layout_width="wrap_content"
             android:id="@+id/Chapter" android:width="30dp"></EditText>
    <TextView android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:id="@+id/TextView01" android:text=":"></TextView>
    <EditText android:layout_height="wrap_content"
              android:layout_width="wrap_content" android:id="@+id/Verse"
              android:width="40dp"></EditText>

</LinearLayout>

أقوم بتضخيم هذا التصميم باعتباره وجهة نظر ALERTDIALOG. ولكن عندما أختار عنصرًا كبيرًا ، يتم دفع حقول النص إلى اليمين. هل هناك أي طريقة لتعيين الحد الأقصى لحجم الدوار ، لذا بعد اختيار عنصر ما ، فإنه يقلل من الاختيار باستخدام القطع البسيطة ("...") أو شيء من هذا القبيل؟

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

المحلول

حجم أ Spinner مجموعة android:layout_width="wrap_content" يتم تحديده بواسطة محتواه. إذا كنت تريد أن تكون أشياء قد قطعت ، فهذا الأمر متروك لك في SpinnerAdapter, ، عند إنشاء طرق عرض الصف الخاصة بك.

أو ، سلك شاق android:layout_width هذا ثابت في الحجم.

أو بدلاً من الاستخدام LinearLayout, ، استعمال RelativeLayout وهمية قواعدك مثل Spinner يشغل المساحة المتبقية على الصف ، عن طريق ترسيخها على الجانب الأيسر من الشاشة وإلى الجانب الأيسر من الأول EditText. على الرغم من أنني لست متأكدًا بنسبة 100 ٪ ما يحدث بعد ذلك إذا كان المحتوى كبيرًا جدًا - فمن المحتمل أنه يتم اقتطاعه.

نصائح أخرى

لا حاجة لاستخدام محول مخصص. استخدم Android.r.layout.simple_spinner_item ثم قم بتغييره من سرادق القطع الناقص إلى إنهاء القطع الناقص. ثم قم بتعيين ملف تخطيط التغيير الجديد كمعرف تخطيط أو استخدم ملف التخطيط هذا

<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/text1"
    style="?android:attr/spinnerItemStyle"
    android:singleLine="true"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingRight="10dp"
    android:ellipsize="end" />

تعيين الدوار Android: Background = "@null" لكي تحل هذه المشكلة. سيؤدي هذا أيضًا إلى إخفاء رؤية أيقونة القائمة المنسدلة

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