我有一个微调器,它是以编程方式创建的:
spinnerLogger = new Spinner(context);
spinnerLogger.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
SpinnerAdapter spinnerAdapter = new ArrayAdapter<>(context, android.R.layout.simple_spinner_dropdown_item, spinnerNames);
spinnerLogger.setAdapter(spinnerAdapter);
在我的代码中我也使用xml创建的微调器,它使用样式来确保用户理解它们是微调器:
<Spinner
android:layout_width="90dp"
android:layout_height="wrap_content"
android:id="@+id/spinnerHour"
android:spinnerMode="dropdown"
style="@style/Widget.AppCompat.Spinner.Underlined" />
我想将Widget.AppCompat.Spinner.Underlined
样式应用于以编程方式创建的微调器,但似乎无法找到如何实现此目的。
我尝试创建一个只包含具有正确样式的微调器的xml(xml的名称是spinner_underlined,它位于布局文件夹中):
<?xml version="1.0" encoding="utf-8"?>
<Spinner android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/spinner"
xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/Widget.AppCompat.Spinner.Underlined"/>
当我尝试使用
应用此功能时SpinnerAdapter spinnerAdapter = new ArrayAdapter<>(context, android.R.layout.spinner_underlined, spinnerNames);
它给了我一个cannot resolve symbol 'spinner_underlined'
错误
答案 0 :(得分:0)
您需要更改为R.layout....
而不是android.R.layout....