Android Studio中Spinner与Adapter出现"Unexpected Token"错误求助
解决Spinner Adapter关联字符串数组的报错问题
可能的原因及对应修复步骤
1. 检查XML资源与布局文件
- 确认
strings.xml中存在格式正确的unit_types字符串数组:<string-array name="unit_types"> <item>长度</item> <item>重量</item> <item>体积</item> </string-array> - 确认布局文件里Spinner的ID为
spinner_unit_types,无拼写错误:<Spinner android:id="@+id/spinner_unit_types" android:layout_width="match_parent" android:layout_height="wrap_content"/>
2. 修正代码上下文与语法
- 确保代码写在Activity的
onCreate方法内,且位于setContentView之后(Android Studio 3.6+无需强制类型转换):@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.your_activity_layout); // 替换为你的布局文件名 Spinner spinnerUnitTypes = findViewById(R.id.spinner_unit_types); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.unit_types, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinnerUnitTypes.setAdapter(adapter); }
3. 清理重建项目
- 点击顶部菜单栏
Build→Clean Project,完成后点击Rebuild Project - 若无效,点击
File→Invalidate Caches...,选择Invalidate and Restart重启Android Studio
4. 检查SDK与依赖配置
- 确认
build.gradle(Module level)中使用稳定的SDK版本,无依赖缺失:android { compileSdk 34 defaultConfig { applicationId "com.yourpackage.name" minSdk 21 targetSdk 34 // 其他配置项 } }
5. 确认类导入正确
- 检查代码顶部是否导入了所需类:
import android.widget.Spinner; import android.widget.ArrayAdapter;
内容的提问来源于stack exchange,提问作者user28649578
相关产品推荐
相关产品推荐

