Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.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
Spinner:在Android中使用共享首选项存储和检索值_Android - Fatal编程技术网

Spinner:在Android中使用共享首选项存储和检索值

Spinner:在Android中使用共享首选项存储和检索值,android,Android,我无法检索微调器的选定值。有人能帮我吗?谢谢 这就是我检索数据的方式。它在onCreate方法中 然后我将微调器的值保存在按钮中,因此当用户从微调器中选择并单击按钮时,所选值将被保存 //Listening to button event btnDone.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { Editor e = mPrefs.edit(); int Spin

我无法检索微调器的选定值。有人能帮我吗?谢谢

这就是我检索数据的方式。它在onCreate方法中

然后我将微调器的值保存在按钮中,因此当用户从微调器中选择并单击按钮时,所选值将被保存

//Listening to button event
btnDone.setOnClickListener(new View.OnClickListener() {
  public void onClick(View v) {
    Editor e = mPrefs.edit();
    int Spinnervalue = SpinnerLang.getSelectedItemPosition();
    e.putInt("PREF_SPINNER", Spinnervalue);
    e.commit();
  }

您可以使用这些方法,具体取决于您声明微调器的方式


您可以使用这些方法,具体取决于您声明微调器的方式


确保在代码中为常量PREF_微调器和使用的PREF_微调器指定了相同的值

mPrefs.getInt(PREF_SPINNER, 0)
e.putInt("PREF_SPINNER", Spinnervalue);

确保在代码中为常量PREF_微调器和使用的PREF_微调器指定了相同的值

mPrefs.getInt(PREF_SPINNER, 0)
e.putInt("PREF_SPINNER", Spinnervalue);
使用spinner.setOnItemSelectedListener存储首选项中的选定项位置

    spinner.setAdapter(mySpinnerAdapter);   

    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        /**
         * Called when a new item is selected (in the Spinner)
         */
        public void onItemSelected(AdapterView<?> parent,
            View view, int position, long id) {
            mPrefs.edit().putInt("PREF_SPINNER", position).commit();
        }

        public void onNothingSelected(AdapterView<?> parent) {
          // Do nothing.
        }
    }); // (optional)

    //UPDATE - When you are using a button onCLick()
    // to set the spinner selection:
    button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            spinner.setSelection(mPrefs.getInt("PREF_SPINNER", 0));

        }
    });



     // set the spinner selected item from preference after 
     // spinner.setAdapter(mySpinnerAdapter);
     // -or it will default to the first item
 //    spinner.setSelection(mPrefs.getInt(PREF_SPINNER, 0));
使用spinner.setOnItemSelectedListener存储首选项中的选定项位置

    spinner.setAdapter(mySpinnerAdapter);   

    spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {

        /**
         * Called when a new item is selected (in the Spinner)
         */
        public void onItemSelected(AdapterView<?> parent,
            View view, int position, long id) {
            mPrefs.edit().putInt("PREF_SPINNER", position).commit();
        }

        public void onNothingSelected(AdapterView<?> parent) {
          // Do nothing.
        }
    }); // (optional)

    //UPDATE - When you are using a button onCLick()
    // to set the spinner selection:
    button.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            spinner.setSelection(mPrefs.getInt("PREF_SPINNER", 0));

        }
    });



     // set the spinner selected item from preference after 
     // spinner.setAdapter(mySpinnerAdapter);
     // -or it will default to the first item
 //    spinner.setSelection(mPrefs.getInt(PREF_SPINNER, 0));

启动微调器设置微调器适配器后,您必须设置微调器选择项的首选项,否则它将默认为第一个项目查看我的更新答案以获取解决方案启动微调器设置微调器适配器后,您必须设置微调器选择项的首选项,或者它将默认为第一项查看我的更新答案以获得解决方案