【发布时间】:2017-12-18 23:51:05
【问题描述】:
我是 Android 新手,如何从主要活动的 ListView 传递 TextView 数据和图像,以便在另一个活动中设置 TextView 中的数据以查看它。 ListView 监听器上的这段代码。
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent(getApplicationContext(),SecondActivity.class);
intent.putExtra("MobileName",adapter.getItem(position).toString());
startActivity(intent);
}
});
这是我的适配器方法,
@Override
public Object getItem(int position) {
return emps.get(position);
}
这是我要在其中显示数据的活动,
id = findViewById(R.id.textOne1);
name = findViewById(R.id.textTwo2);
id.setText(getIntent());
name.setText();
name 和 id 是另一个布局中的 TextView,我想从 main activity 中的数据中填充它, 如何从主要活动中获取每个 TextView 的数据以设置 id 和 name 。
这是我的适配器
public MyAdapter(List<Employee> emps,Context context){
this.emps=emps;
this.context=context;
this.empFilters=emps;
}
@Override
public int getCount() {
return emps.size();
}
@Override
public Object getItem(int position) {
return emps.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@ Override
public View getView(int position, View convertView, ViewGroup parent) {
View myView=null;
if (convertView==null) {
LayoutInflater inflater = LayoutInflater.from(context);
myView = inflater.inflate(R.layout.for_list_view, parent, false);
ViewHolder vh=new ViewHolder();
vh.idText=myView.findViewById(R.id.id);
vh.nameText=myView.findViewById(R.id.name);
vh.imageView=myView.findViewById(R.id.image);
myView.setTag(vh);
} else
myView=convertView;
Employee e=emps.get(position);
ViewHolder vh = (ViewHolder)myView.getTag();
vh.idText.setText(e.getId()+"");
vh.nameText.setText(e.getName());
vh.imageView.setImageResource(e.getImg());
return myView;
}
【问题讨论】:
-
你能在你获取数据的地方显示你的适配器代码吗?