【发布时间】:2020-06-24 04:40:45
【问题描述】:
我正在开发一个 android 项目,一切正常,直到我开始出现以下错误。
android.content.res.Resources$NotFoundException: 找不到维度 资源匹配值0x10500E0(解析名称: default_magnifier_width) 在当前配置中。在 android.content.res.Resources_Delegate.throwException(Resources_Delegate.java:1151) 在 android.content.res.Resources_Delegate.throwException(Resources_Delegate.java:1127) 在 android.content.res.Resources_Delegate.throwException(Resources_Delegate.java:1131) 在 android.content.res.Resources_Delegate.getDimensionPixelSize(Resources_Delegate.java:657) 在 android.content.res.Resources.getDimensionPixelSize(Resources.java:742) 在 android.widget.Magnifier$Builder.applyDefaults(Magnifier.java:1162) 在 android.widget.Magnifier$Builder.(Magnifier.java:1157) 在 android.widget.Magnifier.createBuilderWithOldMagnifierDefaults(Magnifier.java:155) 在 android.widget.Editor.(Editor.java:399) 在 android.widget.TextView.createEditorIfNeeded(TextView.java:12923) 在 android.widget.TextView.setRawInputType(TextView.java:6607) 在 android.widget.TextView.setInputType(TextView.java:6691) 在 android.widget.TextView.(TextView.java:1454) 在 android.widget.EditText.(EditText.java:88) 在 android.widget.EditText.(EditText.java:84) 在 androidx.appcompat.widget.AppCompatEditText.(AppCompatEditText.java:73) 在 com.google.android.material.textfield.TextInputEditText.(TextInputEditText.java:50) 在 com.google.android.material.textfield.TextInputEditText.(TextInputEditText.java:46) 在 java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native 方法)在 java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) 在 java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) 在 java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) 在 org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:393) 在 org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:179) 在 org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:138) 在 com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadView(LayoutlibCallbackImpl.java:299) 在 android.view.BridgeInflater.loadCustomView(BridgeInflater.java:417) 在 android.view.BridgeInflater.loadCustomView(BridgeInflater.java:428) 在 android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:332) 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:961) 在 android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:1123) 在 android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:1097) 在 android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084) 在 android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:1126) 在 android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:1097) 在 android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:682) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:501) 在 com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:328) 在 com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:396) 在 com.android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.java:193) 在 com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:509) 在 com.android.tools.idea.rendering.RenderTask.lambda$inflate$4(RenderTask.java:638) 在 java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) 在 java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) 在 java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) 在 java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) 在 java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) 在 java.base/java.lang.Thread.run(Thread.java:834)
TextInputEditText 显示此错误,说明
The following classes could not be instantiated:
- com.google.android.material.textfield.TextInputEditText (Open Class, Show Exception, Clear Cache)
我尝试了以下选项:
- 缓存无效并重新启动
- 清理并构建项目
- 迁移到“支持”库
- 将父主题更改为“Theme.MaterialComponents.Light.DarkActionBar”
但没有任何效果,因为我认为日志表明它是当前配置的 dimen 内部值错误。 没有任何效果。
XML 文件:
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background"
tools:context=".activities.Register">
<View
android:id="@+id/view8"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginStart="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
android:background="@drawable/ic_generate_bg_ui"
app:layout_constraintBottom_toTopOf="@+id/guideline34"
app:layout_constraintEnd_toStartOf="@+id/guideline29"
app:layout_constraintStart_toStartOf="@+id/guideline28"
app:layout_constraintTop_toTopOf="@+id/guideline30" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline28"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.05" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline29"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintGuide_percent="0.95" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline30"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.1" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline31"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_percent="1.0" />
<TextView
android:id="@+id/textView2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:text="@string/bank_details"
android:textAlignment="center"
android:textColor="@color/white"
android:textSize="16sp"
app:layout_constraintEnd_toStartOf="@+id/guideline29"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/guideline28"
app:layout_constraintTop_toTopOf="parent"/>
<ImageView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="8dp"
android:layout_marginBottom="8dp"
android:tint="@color/white"
app:srcCompat="@drawable/ic_account_balance_wallet_black_24dp"
android:textAlignment="center"
android:textColor="@color/white"
android:textSize="16sp"
android:textStyle="bold"
app:layout_constraintBottom_toTopOf="@+id/guideline30"
app:layout_constraintEnd_toStartOf="@+id/guideline29"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="@+id/guideline28"
app:layout_constraintTop_toBottomOf="@+id/textView2"
tools:ignore="VectorDrawableCompat"
android:contentDescription="@string/bank_balance_image" />
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/textInputLayout"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="16dp"
app:layout_constraintEnd_toStartOf="@+id/guideline29"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/guideline28"
app:layout_constraintTop_toTopOf="@+id/guideline33">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/accountHolderName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/ic_edit_text"
android:hint="@string/account_holder_name"
android:singleLine="true"
android:textColor="@android:color/black" />
</com.google.android.material.textfield.TextInputLayout>
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline33"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.13" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline34"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.85" />
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/textInputLayout2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="16dp"
app:layout_constraintEnd_toStartOf="@+id/guideline29"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/guideline28"
app:layout_constraintTop_toBottomOf="@+id/textInputLayout">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/bankAccountNumber"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/ic_edit_text"
android:hint="@string/account_number"
android:maxLines="1"
android:singleLine="true"
android:textColor="@android:color/black" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/textInputLayout3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="16dp"
app:layout_constraintEnd_toStartOf="@+id/guideline29"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/guideline28"
app:layout_constraintTop_toBottomOf="@+id/textInputLayout2">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/confirmBankAccountNumber"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/ic_edit_text"
android:hint="@string/confirm_account_number"
android:maxLines="1"
android:singleLine="true"
android:textColor="@android:color/black" />
</com.google.android.material.textfield.TextInputLayout>
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/textInputLayoutIFSC"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="16dp"
app:layout_constraintEnd_toStartOf="@+id/guideline29"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="@+id/guideline28"
app:layout_constraintTop_toBottomOf="@+id/textInputLayout3">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/ifscCode"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/ic_edit_text"
android:hint="@string/ifsc"
android:maxLines="1"
android:singleLine="true"
android:textColor="@android:color/black" />
</com.google.android.material.textfield.TextInputLayout>
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/submitBankDetails"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginTop="8dp"
android:layout_marginEnd="16dp"
android:background="@color/colorPrimary"
android:onClick="onSubmit"
android:text="@string/submit"
android:textColor="@color/white"
app:layout_constraintEnd_toStartOf="@+id/guideline29"
app:layout_constraintStart_toStartOf="@+id/guideline28"
app:layout_constraintTop_toBottomOf="@+id/textInputLayoutIFSC" />
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
这是我的 gradle 文件:
dependencies {
// androidx dependency
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'com.google.android.material:material:1.1.0'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation "com.google.android.material:material:1.1.0"
implementation "androidx.multidex:multidex:2.0.1"
implementation "android.arch.navigation:navigation-fragment:$navigationFragment_version"
implementation "com.google.android.gms:play-services-auth:$google_auth_version"
implementation "com.google.android.play:core:$google_play_core"
}
【问题讨论】:
-
显示你的代码它可以帮助我们找到错误
-
@Amitpandey,我已经添加了代码,我已经从所有 TextInputEditText 中删除了 inputType 参数并且它现在正在呈现,但问题是我仍然需要添加 inputtype 以方便客户。
-
当我检查您的 xml 时,我没有发现任何问题显示您的编程代码
-
问题仅在 xml 文件中,编程代码与错误无关。我有 gradle 依赖项。
-
实现 'com.android.support:design:28.0.0' 试试这个
标签: android android-layout gradle material-design