我们刚刚将本地 Android SDK 更新为新的 version 22 ,我们也在尝试更新我们的应用程序,但这似乎是 SearchView 的问题 在 Android Studio 的布局设计 View 中呈现:每次设计人员尝试呈现 SearchView 元素时,都会抛出异常:
java.lang.NullPointerException at android.content.res.TypedArray.hasValueOrEmpty(TypedArray.java:845) at android.widget.SearchView.(SearchView.java:295) at android.widget.SearchView.(SearchView.java:258) at android.widget.SearchView.(SearchView.java:254) at java.lang.reflect.Constructor.newInstance(Constructor.java:422) at android.view.LayoutInflater.createView(LayoutInflater.java:607) at android.view.LayoutInflater.onCreateView(LayoutInflater.java:682) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:741) at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:806) at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64) at android.view.LayoutInflater.rInflate(LayoutInflater.java:782) at android.view.LayoutInflater.inflate(LayoutInflater.java:504) at android.view.LayoutInflater.inflate(LayoutInflater.java:385)
即使我们在新布局文件中从左侧工具栏创建新元素,也会发生这种情况。 有什么想法吗?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<SearchView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/searchView" />
</LinearLayout>
最佳答案
编辑
根据您的 list 将设计器预览中的 Android 版本更改为当前版本。渲染问题导致您的设计器预览使用比当前 Android API 级别更高的 API 级别。
它应该工作
只需将android xml 布局中的api 22 更改为21
关于Android SDK 22 - SearchView 渲染问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29005958/