gpt4 book ai didi

java - 如何将值从 ListView 传递到 detalis Activity

转载 作者:行者123 更新时间:2023-11-30 10:17:51 25 4
gpt4 key购买 nike

我创建了一个简单的 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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com