Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 我对spinneradapter的碎片有问题_Android_Kotlin_Spinner - Fatal编程技术网

Android 我对spinneradapter的碎片有问题

Android 我对spinneradapter的碎片有问题,android,kotlin,spinner,Android,Kotlin,Spinner,我正在和kotlin一起开发android应用程序。我用AddDebtFragment中的3个微调器和resources文件中的3个字符串数组设置所选值。但当我尝试从HomeFragment导航到此片段时,应用程序被终止,并且在片段中的Logcat上显示问题 这是fragment_add_debt.xml中的微调器 <Spinner android:id="@+id/debtCategorySpinner" android:layout_width="match_paren

我正在和kotlin一起开发android应用程序。我用AddDebtFragment中的3个微调器和resources文件中的3个字符串数组设置所选值。但当我尝试从HomeFragment导航到此片段时,应用程序被终止,并且在片段中的Logcat上显示问题

这是fragment_add_debt.xml中的微调器

<Spinner
    android:id="@+id/debtCategorySpinner"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    style="@style/SpinnerStyle"
    android:spinnerMode="dialog" 
    android:entries="@array/debtCategoryList"/>

<Spinner
    android:id="@+id/financialNameSpinner"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:spinnerMode="dialog"
    style="@style/SpinnerStyle"
    android:entries="@array/financialNameList"/>
<Spinner
        android:id="@+id/rateTypeSpinner"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        style="@style/SpinnerStyle"
        android:spinnerMode="dialog"
        android:entries="@array/rateTypeList"/>
编辑:2-我也在complier上看到了它


使用kotlin合成属性时,无需为微调器声明新变量。移除

private val financialSpinner = financialNameSpinner
private val debtSpinner = debtCategorySpinner
private val rateSpinner = rateTypeSpinner
并在代码中将
financialSpinner
替换为
financialsnamespinner
debtSpinner
替换为
debtCategorySpinner
rateSpinner
替换为
rateTypeSpinner

你可以从网站上找到更多关于Kotlin Android扩展的信息

修复警告

您收到此警告是因为
ArrayAdapter.createFromResource
需要一个上下文对象,而
Context
(来自getContext)返回一个可为空的上下文对象。您可以使用
将可空对象转换为非空对象

ArrayAdapter.createFromResource(context!!, R.array.financialNameList, android.R.layout.simple_spinner_item)

阅读本文,了解更多关于Kotlin中空安全的信息

请发布完整的日志,其中说明了错误所在is@sanoJ这是你的真命天子,谢谢!!
E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.debtrearragement, PID: 29305
    java.lang.IllegalStateException: financialSpinner must not be null
        at com.example.debtrearragement.view.ui.debt.AddDebtFragment.onViewCreated(AddDebtFragment.kt:34)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:892)
        at androidx.fragment.app.FragmentManagerImpl.addAddedFragments(FragmentManagerImpl.java:2097)
        at androidx.fragment.app.FragmentManagerImpl.executeOpsTogether(FragmentManagerImpl.java:1871)
        at androidx.fragment.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManagerImpl.java:1827)
        at androidx.fragment.app.FragmentManagerImpl.execPendingActions(FragmentManagerImpl.java:1727)
        at androidx.fragment.app.FragmentManagerImpl$2.run(FragmentManagerImpl.java:150)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6669)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
I/Process: Sending signal. PID: 29305 SIG: 9
Application terminated.
private val financialSpinner = financialNameSpinner
private val debtSpinner = debtCategorySpinner
private val rateSpinner = rateTypeSpinner
ArrayAdapter.createFromResource(context!!, R.array.financialNameList, android.R.layout.simple_spinner_item)