从另一个类插入android spinner元素

时间:2014-11-29 06:29:35

标签: android android-edittext spinner android-spinner

我有2个类AddCategory和SaveData。 AddCategory包含编辑文本和按钮ADD。第二类包含一个微调器和一些编辑文本。我想将一些数据从第1类添加到第二类,即编辑文本输入到Spinner。如何解析从头等到二等的价值?请举例说明..

添加类别类

    btnAdd.setOnClickListener(new OnClickListener()
    {

        @Override
        public void onClick(View arg0) 
        {
            call();     

        }

    });

}

public void call()
{
    cat=edtCategory.getText().toString();

    list.add(cat);    <<<<<*** I want to read and insert this arraylist into spinner in SAVE DATA class ****>>>>>>

}

}

保存数据类

Spinner category;
Button btnSave;

@Override

public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.income_add);

    Intent i=getIntent();

    category=(Spinner)findViewById(R.id.spinner01);

    btnSave=(Button)findViewById(R.id.button01);

// *我在这里放了一个Log来读取ADD CATEGORY类的arraylist,在这里得到null值。我需要阅读arraylist并插入spinner * //

}

2 个答案:

答案 0 :(得分:0)

您可以借助于将AddCategory类中的值传递给SaveData类 共享偏好

使用它来&#34;放&#34;文件(在AddCategory类中)......

Intent i = new Intent(AddCategory.this, SaveData.class);   
String keyIdentifer  = null;
i.putExtra("STRING_I_NEED", strName);

然后,要检索值,请尝试以下内容:(在SaveData类中)

String newString;
if (savedInstanceState == null) {
    extras = getIntent().getExtras();
    if(extras == null) {
        newString= null;
    } else {
        newString= extras.getString("STRING_I_NEED");
    }
} else {
    newString= (String) savedInstanceState.getSerializable("STRING_I_NEED");
}

答案 1 :(得分:0)

试试这个:

String edittextvalue=yourEdittext.getText().toString();

Intent i = new Intent(AddCategory.this, SaveData.class);   
i.putStringArrayListExtra("list", list);
startActivity(i);   

在SaveData类中:

Intent intent=getIntent();
ArrayList<String> list=new ArrayList<String>();
list=intent.getStringArrayListExtra("list");
ArrayAdapter<String> ad =new ArrayAdapter<String>(this,layoutId, list);
spinner.setAdapter(ad);