"ArrayAdapter requires the resource ID to be a TextView"有时会及时执行
"ArrayAdapter requires the resource ID to be a TextView" sometimes in time execution
我正在使用 crashlityc 并寻找这个错误几个小时。它有效,但对于一些用户我有这个错误:
android.widget.ArrayAdapter.createViewFromResource
(ArrayAdapter.java:394) android.widget.ArrayAdapter.getView
(ArrayAdapter.java:362) com.android.internal.os.ZygoteInit.main
android.widget.AbsSpinner.onMeasure (AbsSpinner.java:197)
android.widget.Spinner.onMeasure (Spinner.java:541)
android.support.v7.widget.AppCompatSpinner.onMeasure (AppCompatSpinner.java:418)
android.view.View.measure (View.java:17951)
(ZygoteInit.java:1200)
在我的 class 我有这个:
private void setPhoneNumbers() {
... code .......
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(getActivity(), R.layout.spinner_text, numbers);
spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mPhoneNumbersSpinner.setAdapter(spinnerAdapter);
}`
在我的.xml :
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_marginRight="5dp"
android:ellipsize="end"
android:maxLines="1"
android:textColor="@color/menu_header_txt"
android:textSize="13sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@android:id/text1" />`
我想您需要使用下面提到的 ArrayAdapter
构造函数 here:
ArrayAdapter (Context context,
int resource,
int textViewResourceId,
T[] objects)
你的情况:
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(getActivity(), R.layout.spinner_text, R.id.text1, numbers);
我正在使用 crashlityc 并寻找这个错误几个小时。它有效,但对于一些用户我有这个错误:
android.widget.ArrayAdapter.createViewFromResource (ArrayAdapter.java:394) android.widget.ArrayAdapter.getView (ArrayAdapter.java:362) com.android.internal.os.ZygoteInit.main android.widget.AbsSpinner.onMeasure (AbsSpinner.java:197) android.widget.Spinner.onMeasure (Spinner.java:541) android.support.v7.widget.AppCompatSpinner.onMeasure (AppCompatSpinner.java:418) android.view.View.measure (View.java:17951) (ZygoteInit.java:1200)
在我的 class 我有这个:
private void setPhoneNumbers() {
... code .......
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(getActivity(), R.layout.spinner_text, numbers);
spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mPhoneNumbersSpinner.setAdapter(spinnerAdapter);
}`
在我的.xml :
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_marginRight="5dp"
android:ellipsize="end"
android:maxLines="1"
android:textColor="@color/menu_header_txt"
android:textSize="13sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@android:id/text1" />`
我想您需要使用下面提到的 ArrayAdapter
构造函数 here:
ArrayAdapter (Context context,
int resource,
int textViewResourceId,
T[] objects)
你的情况:
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(getActivity(), R.layout.spinner_text, R.id.text1, numbers);