我有一个按钮和一个edittextbox的第一个活动。当我点击该按钮时,我需要将数据列表从第一个活动传递到第二个活动。
第二个活动将显示为列表。如果用户从列表中选择一个,那么该特定数据应该移回到被调用的活动(第一个活动),并且应该显示在EditText框中。我怎么能这样做?
我的FirstActivity:
public class First extends Activity {
Button click;
EditText edit;
ArrayList site=new ArrayList();
String[] sitestr=new String[]{"monkey","donkey","Elephant","Baffalo"};
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
click=(Button)findViewById(R.id.click);
edit=(EditText)findViewById(R.id.edit);
click.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
CustomizeDialog1 customizeDialog = new CustomizeDialog1(tu.this,sitestr);
customizeDialog.show();
}
});
}
第二:
public class CustomizeDialog1 extends Dialog implements OnClickListener, OnItemClickListener {
String selected_value;
Button okButton;
String hi[];
// ListView list_view;
public CustomizeDialog1(Context context,String[] value) {
super(context);
hi=value;
// Log.v("Length",""+hi.length);
/** 'Window.FEATURE_NO_TITLE' - Used to hide the title */
requestWindowFeature(Window.FEATURE_NO_TITLE);
/** Design the dialog in main.xml file */
setContentView(R.layout.listviewinflate);
ListView lst=(ListView)findViewById(R.id.list1);
ArrayAdapter adapter = new ArrayAdapter(getContext(), android.R.layout.simple_list_item_1,hi);
lst.setAdapter(adapter);
lst.setOnItemClickListener(this);
okButton = (Button) findViewById(R.id.cancel);
okButton.setOnClickListener(this);
}
@Override
public void onClick(View v) {
/** When OK Button is clicked, dismiss the dialog */
if (v == okButton)
dismiss();
}
@Override
public void onItemClick(AdapterView> arg0, View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
selected_value=hi[arg2];
//Log.v("selected_value", selected_value);
Toast.makeText(getContext(), selected_value,Toast.LENGTH_SHORT).show();
}
}