Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.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保存微调器选择_Android_Android Intent_Spinner_Sharedpreferences_Commit - Fatal编程技术网

Android保存微调器选择

Android保存微调器选择,android,android-intent,spinner,sharedpreferences,commit,Android,Android Intent,Spinner,Sharedpreferences,Commit,我有两项活动。在第二个活动中,我有一个旋转器。我希望在用户从微调器中选择一个项目后,它将通过actionbar按钮保存,并在back按钮上加载上一个活动。根据我的研究,我的活动应该如下所示,但不起作用我做错了什么 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_edi

我有两项活动。在第二个活动中,我有一个旋转器。我希望在用户从微调器中选择一个项目后,它将通过actionbar按钮保存,并在back按钮上加载上一个活动。根据我的研究,我的活动应该如下所示,但不起作用我做错了什么

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_edit);
    getActionBar().setDisplayHomeAsUpEnabled(true);

    spin = (Spinner)findViewById(R.id.editspin);

    Intent i = this.getIntent();
    note = new ArgueItem();
    note.setKey(i.getStringExtra("key"));
    note.setText(i.getStringExtra("text"));

    EditText et = (EditText)findViewById(R.id.argueEdit);
    et.setText(note.getText());
    et.setSelection(note.getText().length());


}private boolean saveState() {
          prefs = PreferenceManager.getDefaultSharedPreferences(this);
          SharedPreferences.Editor prefEditor = prefs.edit();
          int daddy = spin.getSelectedItemPosition();
          prefEditor.putInt("savedValue",daddy);
          prefEditor.commit();
        return true;
    }

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    EditText et = (EditText)findViewById(R.id.argueEdit);
    String argueText = et.getText().toString();
    if(argueText.equals("")){
        Toast.makeText(this, "Please Enter A New ", Toast.LENGTH_SHORT).show();

        return false;
    }
    if (item.getItemId() == android.R.id.home) {
        saveAndFinish();
    }
    return false;
}
@Override
public void onBackPressed() {
    EditText et = (EditText)findViewById(R.id.argueEdit);
    String argueText = et.getText().toString();
    if(argueText.equals("")){
        Toast.makeText(this, "Please Enter A New ", Toast.LENGTH_SHORT).show();

        return;
    }else{
    saveAndFinish();
}

在第二个活动中,必须覆盖onPause和。在它里面写下保存过程

protected void onPause(){
    super.onPause();

    //Include the code which, save the data.
}

您应该使用FragmentActivity并在同一活动中添加/删除片段。 检查这些资源:

这就是我如何初始化操作栏中的微调器。我不是将其添加为自定义视图,而是使用下拉菜单功能

actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
actionBar.setListNavigationCallbacks(adapter, new ActionBar.OnNavigationListener() {
        @Override
        public boolean onNavigationItemSelected(int itemPosition, long itemId) {

            //save in preferences
            PreferenceManager.getDefaultSharedPreferences(MainActivity.this).edit().
                    putInt(SELECTED_DIARY_PREF, itemPosition).commit();

            return true;
        }
    });
int selPosition = PreferenceManager.getDefaultSharedPreferences(this).getInt(SELECTED_DIARY_PREF, 0);
actionBar.setSelectedNavigationItem(selPosition);

此代码的作用是:单击菜单项时保存首选项,并在启动活动时恢复该首选项。希望有帮助。

发布活动类-您只发布了一个帮助类-如何使用?什么不起作用??自旋字段设置在哪里?这是正常的java类POST ur活动class@Mr_and_Mrs_D我已将代码更新为activity@ShakeebAyaz我已将代码更新到活动中