作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我创建了一个简单的 listView
,它从服务器获取数据,一切正常,但现在我想将 listView
(Item) 的值传递给另一个 Activity
public void onViewBind(View view, Cursor cursor, ODataRow row) {
_list = new ArrayList<>();
OControls.setText(view, R.id.person_name, row.getString("name"));
// Retrive Code dept*/
Dep dept = new Dept(context, null);
ODataRow rows_c = dept.select(
new String[]{"code"}
).get(row.getInt("dept_id")-1);
_list.add(rows_c.getString("code"));
OControls.setText(view, R.id.dept_person, rows_c.getString("code"));
// Retrive name person*/
ResPartner partner = new ResPartner(context, null);
ODataRow rows = partner.select(
new String[]{"name"}
).get(row.getInt("person_id")-1);
OControls.setText(view, R.id.Type_sanction, rows.getString("name"));
}
我正在使用数组列表将值从第一种方法传递到第二种方法,但我想在单击时传递 ListView 中对应行的对象
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long
id) {
final Intent intent;
intent = new Intent(view.getContext(), Detailsdept.class);
Bundle extras = new Bundle();
extras.putSerializable("ARRAYLIST",(Serializable)_list);
for(int i=0; i<_list.size(); i++) {
String x = _list.get(i);
extras.putString("code", x);
intent.putExtras(extras);
}
view.getContext().startActivity(intent);
Toast.makeText(view.getContext(), "id"+position, Toast.LENGTH_SHORT).show();
}
}
最佳答案
在您的适配器中创建一个接口(interface)
public interface OnItemClickListener {
void onItemClicked(int position, Object object);
}
在您的适配器调用中
Adapter adapter = new Adapter(list, new Adapter.OnItemClickListener() {
@Override
public void onItemClicked(int position, Object object) {
// Handle Object of list item here
}
});
在您的适配器上
private OnItemClickListener onItemClickListener; // Global scope
在构造函数调用中:
this.onItemClickListener = onItemClickListener;
在您的商品点击事件上:
itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
onItemClickListener.onItemClicked(position, _list.get(position));
}
});
关于java - 如何将值从 ListView 传递到 detalis Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49550642/
我创建了一个简单的 listView,它从服务器获取数据,一切正常,但现在我想将 listView(Item) 的值传递给另一个 Activity public void onViewBind(Vi
我是一名优秀的程序员,十分优秀!