Java 单击值时微调器不更改

Java 单击值时微调器不更改,java,android,Java,Android,我正在Android Studio中开发一个应用程序。我的一个碎片上有一个简单的旋转器。我从arraylist加载数据,如下所示 public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) { myView = inflater.inflate(R.layout.content_main, container, false);

我正在Android Studio中开发一个应用程序。我的一个碎片上有一个简单的旋转器。我从arraylist加载数据,如下所示

    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
    myView = inflater.inflate(R.layout.content_main, container, false);

    Spinner ddlLocation = (Spinner) myView.findViewById(R.id.ddlLocation);
    //ddlLocation.setOnItemSelectedListener(this);

    //Load the nameList array into the drop down list (Spinner)
    LocationDBHandler locationDBHandler = new LocationDBHandler(getActivity().getApplicationContext(),null,null,1);
    ArrayList<String> nameList = locationDBHandler.getAllNames();
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(getActivity().getApplicationContext(), android.R.layout.simple_spinner_item, nameList);
    ddlLocation.setPrompt("Select a Location");
    ddlLocation.setAdapter(adapter);
    adapter.notifyDataSetChanged();

    return myView;
}
空指针

01-07 21:49:15.463 22000-22000/com.example.connor.connorminstafeed E/AndroidRuntime: FATAL EXCEPTION: main
                                                                                 Process: com.example.connor.connorminstafeed, PID: 22000
                                                                                 java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Object android.widget.Spinner.getSelectedItem()' on a null object reference
                                                                                     at com.example.connor.connorminstafeed.HistoryFragment.onCreateView(HistoryFragment.java:38)
                                                                                     at android.app.Fragment.performCreateView(Fragment.java:2220)
                                                                                     at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:973)
                                                                                     at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1148)
                                                                                     at android.app.BackStackRecord.run(BackStackRecord.java:793)
                                                                                     at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1535)
                                                                                     at android.app.FragmentManagerImpl$1.run(FragmentManager.java:482)
                                                                                     at android.os.Handler.handleCallback(Handler.java:739)
                                                                                     at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                                     at android.os.Looper.loop(Looper.java:148)
                                                                                     at android.app.ActivityThread.main(ActivityThread.java:5417)
                                                                                     at java.lang.reflect.Method.invoke(Native Method)
                                                                                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
                                                                                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
数组列表代码。你不认为这会是个问题,因为纺纱机的人气很好吗

public ArrayList<String> getAllNames() {
    String query = "SELECT name FROM " + TABLE_LOCATION;

    SQLiteDatabase db = this.getWritableDatabase();

    Cursor cursor = db.rawQuery(query, null);

    ArrayList<String> nameList = new ArrayList<String>();

    if (cursor.moveToFirst()) {
        while (!cursor.isAfterLast()) {
            String name = cursor.getString(cursor.getColumnIndex("name"));
            nameList.add(name);
            cursor.moveToNext();
        }
    }
    return nameList;
}
微调器XML

    <Spinner
    android:id="@+id/ddlLocation"
    android:layout_width="280dp"
    android:layout_height="83dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:layout_marginTop="8dp"
    android:textColor="#475afd"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView11" />
有什么想法吗


非常感谢。

将您的姓名列表设置为全局。然后在“选定项”中编写代码,如下图所示,并检查选定项是否出现。如果是,则继续

 @Override
    public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {

        Toast.makeText(this,""+nameList.get(i),Toast.LENGTH_LONG).show();
    }
并在xml中更改spinner.com的背景色,如下所示

android:background=6767

<Spinner
    android:background="#676767"
    android:id="@+id/ddlLocation"
    android:layout_width="280dp"
    android:layout_height="83dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:layout_marginTop="8dp"
    android:textColor="#475afd"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView11" />

你能把日志贴出来吗?对不起,我对这个很陌生。你是说Logcat窗口中的日志吗?无论如何,我会把这些加在问题上。是的。非常感谢。请在选择后立即添加NPE日志或日志。在导航到从该微调器提取信息的页面后添加NPE日志。是否可以发布适配器代码?您的适配器中似乎存在配置错误的情况。
<Spinner
    android:background="#676767"
    android:id="@+id/ddlLocation"
    android:layout_width="280dp"
    android:layout_height="83dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:layout_marginTop="8dp"
    android:textColor="#475afd"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView11" />