[英]Pass ListView values to multiple EditText in another Activity
[英]How to pass two edittext values to listview in another activity in android?
嗨,我有两个EditText
值,并希望在另一个活动中将它们传递给自定义的ListView
。 请帮我怎么做
要将值从一个Activity传递到另一个Activity,请使用Intent with Bundle。 Bundle是一个对象,其中包含要在键/值存储中设置的一组对象(我假设它由HashMap支持)。 您要传递两个EditText值(字符串)。 因此,您将使用通过Intent传递给另一个活动的Bundle :
//In first Activity that isn't the ListView Activity
Intent intent = new Intent(this, YourListActivity.class);
Bundle bundle = new Bundle();
bundle.putString("stringOne", editTextOne.getText().toString());
bundle.putString("stringTwo", editTextTwo.getText().toString());
intent.putExtras(bundle);
startActivity(intent);
//Now in your List Activity's onCreate() method you can do the following
Bundle extras;
if(getIntent().getExtras() != null){
extras = getIntent().getExtras();
}
//Now, anywhere after in your List Activity you can access
//the EditText strings from first Activity
// (Somewhere later in your code, or just in your onCreate method)
String first = extras.getString("stringOne");
String second = extras.getString("stringTwo");
头等舱
Button button = (Button) findViewById(R.id.button);
EditText editT1 = (EditText) findViewById(R.id.editT1);
EditText editT2 = (EditText) findViewById(R.id.editT2);
button.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Intent intent = new Intent(First_activity.this,Second_activity.class);
intent.putExtra("text1", et1.getText().toString());
intent.putExtra("text2", et2.getText().toString());
intent.putExtra("Image_URL", "your_image_url");
startActivity(intent);
}
});
然后在二等舱
ListView List;
@Override受保护的void onCreate(捆绑的saveInstanceState)
{super.onCreate(savedInstanceState); setContentView(activity_second); Intent intent = getIntent(); 字符串text1 = intent.getStringExtra(“ text1”); 字符串text2 = intent.getStringExtra(“ text2”);
List=(ListView) findViewById(R.id.ListView);//your listview id
ListAdapter ListAdapter=new ListAdapter(this,text1,text2);
List.setAdapter(ListAdapter);
}
现在创建自己的列表适配器
import android.app.Activity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
public class ListAdapter extends BaseAdapter
{
Activity context;
String title[];
String description[];
public ListAdapter (Activity context, String[] title, String[] description) {
super();
this.context = context;
this.title = title;
this.description = description;
}
public int getCount() {
// TODO Auto-generated method stub
return title.length;
}
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
private class ViewHolder {
TextView txtViewTitle;
TextView txtViewDescription;
}
public View getView(int position, View convertView, ViewGroup parent)
{
// TODO Auto-generated method stub
ViewHolder holder;
LayoutInflater inflater = context.getLayoutInflater();
if (convertView == null)
{
convertView = inflater.inflate(R.layout.dital_list_view, null);//your listview layout
holder = new ViewHolder();
holder.txtViewTitle = (TextView) convertView.findViewById(R.id.titleText);//forst textview id
holder.txtViewDescription = (TextView) convertView.findViewById(R.id.descriptionText);
convertView.setTag(holder);//second text view id
}
else
{
holder = (ViewHolder) convertView.getTag();
}
holder.txtViewTitle.setText(title[position]);
holder.txtViewDescription.setText(description[position]);
return convertView;
}
}
现在创建列表视图布局
<?xml version="1.0" encoding="UTF-8"?>
-<LinearLayout android:layout_height="match_parent" android:layout_width="match_parent" android:orientation="horizontal" xmlns:android="http://schemas.android.com/apk/res/android">
<TextView
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:id="@+id/titleText"/>
<TextView
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:id="@+id/descriptionText" />
</LinearLayout>
我希望这会有所帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.