【发布时间】:2018-05-27 10:41:40
【问题描述】:
我的微调器受限于指南,并根据屏幕大小更改其大小。然后是我的问题。我有这个
它的 custom_spinner.XML
它的宽度和高度是匹配约束
我的自定义适配器
public class MyCustomSpinnerAdapter extends ArrayAdapter<MySpinnerData>
{
private Context context;
private List<MySpinnerData> spinnerData;
private boolean Car = false;
private String initialText;
private boolean alignLeft = false;
public MyCustomSpinnerAdapter(@NonNull Context context,@LayoutRes int resource,List<MySpinnerData> spinnerData)
{
super(context, resource,spinnerData);
spinnerData = spinnerData;
context = context;
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent)
{
return myCustomSpinnerView(position, convertView, parent );
}
@Override
public View getDropDownView(int position, @Nullable View convertView, @NonNull ViewGroup parent)
{
return myCustomSpinnerView(position, convertView, parent);
}
private View myCustomSpinnerView(int position, @Nullable View myView, @NonNull ViewGroup parent)
{
LayoutInflater layoutInflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View customview = layoutInflater.inflate(R.layout.spinner_layout,parent,false);
TextView textView = (TextView)customview.findViewById(R.id.textView);
textView.setText(spinnerData.get(position).getIconName()); //function that set text
return customview;
}
}
<TextView
android:id="@+id/textView"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@drawable/my_border"
android:fadeScrollbars="false"
android:fontFamily="@font/titillium_web"
android:gravity="center_horizontal|center_vertical"
android:text="simple"
android:textColor="@android:color/background_light"
android:textSize="18sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/guideline4"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/guideline2"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0" />
<ImageView
android:id="@+id/imageView3"
android:layout_width="23dp"
android:layout_height="23dp"
android:layout_marginBottom="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
app:layout_constraintBottom_toBottomOf="@+id/textView"
app:layout_constraintStart_toStartOf="@+id/textView"
app:layout_constraintTop_toTopOf="@+id/textView"
app:srcCompat="@drawable/autic" />
<android.support.constraint.Guideline
android:id="@+id/guideline2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.00" />
<android.support.constraint.Guideline
android:id="@+id/guideline4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="1" />
这是activity_main.XML(微调器)
<Spinner
android:id="@+id/Tablice"
android:layout_width="0dp"
android:layout_height="89dp"
android:layout_marginBottom="8dp"
android:layout_marginEnd="6dp"
android:layout_marginTop="8dp"
android:background="@null"
android:popupBackground="@color/uplatiParkingDugme"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/TablicaDugme"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/guideline"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.25"
/>
宽度完全适合,但是一旦我将匹配约束设置为 custom_spinner 的宽度参数,下拉项就不会显示?
谁能帮帮我?我坚持了一个星期..
【问题讨论】:
-
这是一个布局问题,您正在发布 java 代码.. 干得好
-
@Sam 我添加了 XML 代码,抱歉
-
所有我能看到的都是宽度
0 dp。 -
@Sam 没必要粗鲁。如果您不想帮助 OP,请不要发表评论。
-
@ClassA。提到他们的宽度
0 dp是粗鲁的吗?嗯学到了新东西。
标签: android view constraints spinner