Java 如何修复Androidx中导致堆栈跟踪和空白布局预览中出现空指针异常的渲染问题?

Java 如何修复Androidx中导致堆栈跟踪和空白布局预览中出现空指针异常的渲染问题?,java,android-studio,nullpointerexception,Java,Android Studio,Nullpointerexception,我正在为我的大学研究项目开发一个应用程序,突然我的版面预览变成了空白。不久之前,我接到通知,我忽略了一个更新。现在每个布局上都有一个java.lang.NullPointerException的渲染问题,除了一些 我曾尝试将我的应用程序级应用程序兼容性依赖项更新为最新的alpha1,或将基本根目录添加到我的应用程序主题,但没有任何效果 请帮帮我,这让我很紧张。以下是错误: java.lang.NullPointerException at com.android.ninepatch.Gr

我正在为我的大学研究项目开发一个应用程序,突然我的版面预览变成了空白。不久之前,我接到通知,我忽略了一个更新。现在每个布局上都有一个java.lang.NullPointerException的渲染问题,除了一些

我曾尝试将我的应用程序级应用程序兼容性依赖项更新为最新的alpha1,或将基本根目录添加到我的应用程序主题,但没有任何效果

请帮帮我,这让我很紧张。以下是错误:

java.lang.NullPointerException
    at com.android.ninepatch.GraphicsUtilities.toCompatibleImage(GraphicsUtilities.java:50)
    at com.android.ninepatch.GraphicsUtilities.loadCompatibleImage(GraphicsUtilities.java:38)
    at com.android.ninepatch.NinePatch.load(NinePatch.java:97)
    at com.android.layoutlib.bridge.impl.ResourceHelper.getNinePatchDrawable(ResourceHelper.java:457)
    at com.android.layoutlib.bridge.impl.ResourceHelper.getDrawable(ResourceHelper.java:332)
    at android.content.res.BridgeTypedArray.getDrawable(BridgeTypedArray.java:673)
    at android.view.View.<init>(View.java:5269)
    at android.widget.TextView.<init>(TextView.java:974)
    at android.widget.Button.<init>(Button.java:166)
    at android.widget.Button.<init>(Button.java:141)
    at androidx.appcompat.widget.AppCompatButton.<init>(AppCompatButton.java:74)
    at androidx.appcompat.widget.AppCompatButton.<init>(AppCompatButton.java:69)
    at androidx.appcompat.app.AppCompatViewInflater.createButton(AppCompatViewInflater.java:204)
    at androidx.appcompat.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:123)
    at sun.reflect.GeneratedMethodAccessor248.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at android.view.BridgeInflater.lambda$createViewFromCustomInflater$0(BridgeInflater.java:259)
    at android.view.BridgeInflater.createViewFromCustomInflater(BridgeInflater.java:285)
    at android.view.BridgeInflater.onCreateView(BridgeInflater.java:122)
    at android.view.LayoutInflater.onCreateView(LayoutInflater.java:930)
    at android.view.LayoutInflater.onCreateView(LayoutInflater.java:950)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1004)
    at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:309)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:961)
    at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:1123)
    at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:1097)
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084)
    at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:1126)
    at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:1097)
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084)
    at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:1126)
    at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:72)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:1097)
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1084)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:682)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:501)
    at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:328)
    at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:396)
    at com.android.tools.idea.layoutlib.LayoutLibrary.createSession(LayoutLibrary.java:209)
    at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:608)
    at com.android.tools.idea.rendering.RenderTask.lambda$inflate$6(RenderTask.java:734)
    at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
我找不到错误,请帮忙

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#FFFFFF"
    tools:context=".CampaignsManagement">

    <LinearLayout
        android:id="@+id/linearHead"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/colorAccent"
        android:orientation="vertical"
        android:padding="20dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <TextView
            android:id="@+id/textView16"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="CAMPAIGN MANAGER"
            android:textAlignment="center"
            android:textColor="#FFFFFF"
            android:textSize="18sp"
            android:textStyle="bold" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayout7"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:orientation="vertical"
        android:paddingLeft="20dp"
        android:paddingTop="30dp"
        android:paddingRight="20dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/linearHead">

        <TextView
            android:id="@+id/textView26"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:paddingTop="10dp"
            android:paddingBottom="10dp"
            android:text="Select Election:"
            android:textColor="#000000"
            android:textStyle="bold" />

        <Spinner
            android:id="@+id/spinnerElection"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:entries="@array/loading" />

        <TextView
            android:id="@+id/textView17"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:paddingTop="10dp"
            android:paddingBottom="10dp"
            android:text="Select Campiagn Type:"
            android:textColor="#000000"
            android:textStyle="bold" />

        <Spinner
            android:id="@+id/spinnerCampaignType"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:entries="@array/campaignType" />

        <TextView
            android:id="@+id/textView22"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:paddingTop="10dp"
            android:paddingBottom="10dp"
            android:text="Select Campaign Province:"
            android:textColor="#000000"
            android:textStyle="bold" />

        <Spinner
            android:id="@+id/spinnerProvince"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:entries="@array/provinces" />

        <TextView
            android:id="@+id/textView23"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:paddingTop="10dp"
            android:paddingBottom="10dp"
            android:text="Select Provincial District:"
            android:textColor="#000000"
            android:textStyle="bold" />

        <Spinner
            android:id="@+id/spinnerDistrict"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

        <TextView
            android:id="@+id/textView24"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:paddingTop="10dp"
            android:paddingBottom="10dp"
            android:text="Enter District Region and Ward:"
            android:textColor="#000000"
            android:textStyle="bold" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="horizontal">

            <EditText
                android:id="@+id/editTextRegion"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:ems="10"
                android:hint="Enter Region Name"
                android:inputType="text" />

            <EditText
                android:id="@+id/editTextWard"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="3"
                android:ems="10"
                android:hint="Ward"
                android:inputType="number"
                android:maxLength="3" />
        </LinearLayout>

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:orientation="vertical"
        android:padding="20dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/linearLayout7">

        <TextView
            android:id="@+id/textView27"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="#4CAF50"
            android:paddingLeft="10dp"
            android:paddingRight="10dp"
            android:text="Campaign Action Buttons"
            android:textAlignment="center"
            android:textColor="#FDFDFD"
            android:textSize="18sp"
            android:textStyle="bold" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:padding="20dp">

            <Button
                android:id="@+id/buttonSearch"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="@drawable/common_google_signin_btn_icon_light_normal_background"
                android:text="@android:string/search_go"
                android:textColor="#FF5722" />

            <Button
                android:id="@+id/buttonCreate"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:background="@drawable/common_google_signin_btn_icon_light_normal_background"
                android:text="CREATE"
                android:textColor="#4CAF50" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <TextView
                android:id="@+id/textView28"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="Need Help? ... Click Here."
                android:textAlignment="center"
                android:textColor="#000000"
                android:textStyle="bold" />
        </LinearLayout>
    </LinearLayout>

    <com.airbnb.lottie.LottieAnimationView
        android:id="@+id/animationViewLoading"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:background="#FFFFFF"
        android:visibility="gone"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.0"
        app:lottie_autoPlay="true"
        app:lottie_loop="true"
        app:lottie_rawRes="@raw/lottie_loading_simple" />

</androidx.constraintlayout.widget.ConstraintLayout>

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#FFFFFF"
    tools:context=".ConsoleSelection">

    <TextView
        android:id="@+id/textViewHead"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="SELECT CONSOLE"
        android:textColor="#000000"
        android:textSize="18sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toTopOf="@+id/linearLayout"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/textViewLogout"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Logout"
        android:textColor="@color/colorAccent"
        android:textStyle="bold"
        app:layout_constraintBottom_toTopOf="@+id/linearLayout"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.8"
        app:layout_constraintStart_toEndOf="@+id/textViewHead"
        app:layout_constraintTop_toTopOf="parent" />

    <View
        android:id="@+id/divider3"
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:background="@color/colorAccent"
        app:layout_constraintBottom_toTopOf="@+id/linearLayout"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/textViewHead" />

    <LinearLayout
        android:id="@+id/linearLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingLeft="30dp"
        android:paddingRight="30dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.19999999">

        <LinearLayout
            android:id="@+id/linearMenuItemVoterReg"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <com.airbnb.lottie.LottieAnimationView
                android:id="@+id/animationViewVoterReg"
                android:layout_width="150dp"
                android:layout_height="180dp"
                android:background="#FFFFFF"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintHorizontal_bias="0.0"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent"
                app:layout_constraintVertical_bias="0.0"
                app:lottie_autoPlay="true"
                app:lottie_loop="true"
                app:lottie_rawRes="@raw/lottie_register_to_vote" />

            <TextView
                android:id="@+id/textView18"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="VOTER REGISTRATION"
                android:textAlignment="viewStart"
                android:textColor="#000000"
                android:textStyle="bold" />

        </LinearLayout>

        <LinearLayout
            android:id="@+id/linearMenuZecAdmin"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="right"
            android:orientation="vertical">

            <com.airbnb.lottie.LottieAnimationView
                android:id="@+id/animationViewZecAdmin"
                android:layout_width="150dp"
                android:layout_height="180dp"
                android:background="#FFFFFF"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintHorizontal_bias="0.0"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent"
                app:layout_constraintVertical_bias="0.0"
                app:lottie_autoPlay="true"
                app:lottie_loop="true"
                app:lottie_rawRes="@raw/lottie_zec_admin" />

            <TextView
                android:id="@+id/textView19"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="ZEC ADMIN CONSOLE"
                android:textAlignment="viewEnd"
                android:textColor="#000000"
                android:textStyle="bold" />

        </LinearLayout>
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linearLayout2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingLeft="30dp"
        android:paddingRight="30dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/linearLayout"
        app:layout_constraintVertical_bias="0.19999999">

        <LinearLayout
            android:id="@+id/linearMenuItemVotingPoll"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <com.airbnb.lottie.LottieAnimationView
                android:id="@+id/animationViewVotingPoll"
                android:layout_width="150dp"
                android:layout_height="180dp"
                android:background="#FFFFFF"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintHorizontal_bias="0.0"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent"
                app:layout_constraintVertical_bias="0.0"
                app:lottie_autoPlay="true"
                app:lottie_loop="true"
                app:lottie_rawRes="@raw/lottie_vote" />

            <TextView
                android:id="@+id/textView20"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="VOTING POLL SETUP"
                android:textAlignment="viewStart"
                android:textColor="#000000"
                android:textStyle="bold" />

        </LinearLayout>

        <LinearLayout
            android:id="@+id/linearMenuReults"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="right"
            android:orientation="vertical">

            <com.airbnb.lottie.LottieAnimationView
                android:id="@+id/animationViewResults"
                android:layout_width="150dp"
                android:layout_height="180dp"
                android:background="#FFFFFF"
                app:layout_constraintBottom_toBottomOf="parent"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintHorizontal_bias="0.0"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintTop_toTopOf="parent"
                app:layout_constraintVertical_bias="0.0"
                app:lottie_autoPlay="true"
                app:lottie_loop="true"
                app:lottie_rawRes="@raw/lottie_results" />

            <TextView
                android:id="@+id/textView21"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="VIEW RESULTS"
                android:textAlignment="viewEnd"
                android:textColor="#000000"
                android:textStyle="bold" />

        </LinearLayout>
    </LinearLayout>

    <ImageView
        android:id="@+id/imageViewAppLogo"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:background="#FFFFFF"
        android:visibility="visible"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@drawable/app_logo" />

    <TextView
        android:id="@+id/textView31"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:paddingLeft="20dp"
        android:paddingRight="20dp"
        android:text="From now, every action you make on this system will logged and recorded. Any attempt to misuse the system is punishable by State."
        android:textAlignment="center"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/linearLayout2" />

</androidx.constraintlayout.widget.ConstraintLayout>
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'

android {
    compileSdkVersion 29
    buildToolsVersion "29.0.3"

    defaultConfig {
        applicationId "com.sekaistudios.zimvote"
        minSdkVersion 21
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }

}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.core:core:1.4.0-alpha01'
    implementation 'androidx.appcompat:appcompat:1.3.0-alpha01'
    implementation 'com.google.firebase:firebase-analytics:17.4.2'
    implementation 'com.google.firebase:firebase-auth:19.3.1'
    implementation 'com.google.firebase:firebase-database:19.3.0'
    implementation 'com.google.firebase:firebase-storage:19.1.1'
    implementation 'com.airbnb.android:lottie:3.4.0'
    implementation 'androidx.biometric:biometric:1.0.1'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}