گرفتن مقدار آی دی آیتم های لیست ویو
سلام دوستان
من یک لیست ویو دارم که اطلاعاتشو داره از دیتابیس میگیره و با یک آداپتر مقدارها رو ست میکنه
حالا میخوام زمانی که روی هر آیتم کلیک میشه مقدار آی رو بگیرم از توی کلاس مین اکتیوتی
پزیشن رو میشه با
setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
گرفت اما من دنبال ای دی که توی دیتابیس ذخیره شده هستم، میخوام آی دی آیتم رو با کلیک کردن روش بگیرم
کدهای مختلفی نوشتم ولی جواب نداد ...
لطفا اگر ممکن هست راهنمایی کنید
ممنونم
نقل قول: گرفتن مقدار آی دی آیتم های لیست ویو
سلام
شما از یک custom adapter استفاده کردین یا اینکه از adapter پیش فرض...؟؟
نقل قول: گرفتن مقدار آی دی آیتم های لیست ویو
نقل قول:
نوشته شده توسط
msroid
سلام
شما از یک custom adapter استفاده کردین یا اینکه از adapter پیش فرض...؟؟
من از Custom adapter استفاده کردم
نقل قول: گرفتن مقدار آی دی آیتم های لیست ویو
خب اگه اینجوره که بازم راحته دیگه. شما وقتی یه نمونه از کلاس custom adapter ساختی(مثلا mAdapter) بعدش توی متد onItemClickListener میتونی با استفاده از متد getItem(position)z از طریق mAdapter اون نمونه داده ای رو که از دیتابیس گرفتی و به عنوان ورودی به Adapter دادی رو بگیری:
// imagine you have this class
class MyData{
private String title;
private String body;
public void setTitle(String title){
this.title = title;
}
public String getTitle(){
return title;
}
public void setBody(String body){
this.body = body;
}
public String getBody(){
return body;
}
@Override
public void onItemClick(CoverAdapterView<?> parent, View view, int position, long id) {
MyData data = mAdapter.getItem(position);
String title = data.getTitle();
String body = data.getBody();
Toast.makeText(this, "title is: " + title + " and body is: " + body, Toast.LENGTH_SHORT).show();
}
نقل قول: گرفتن مقدار آی دی آیتم های لیست ویو
نقل قول:
نوشته شده توسط
msroid
خب اگه اینجوره که بازم راحته دیگه. شما وقتی یه نمونه از کلاس custom adapter ساختی(مثلا mAdapter) بعدش توی متد onItemClickListener میتونی با استفاده از متد getItem(position)z از طریق mAdapter اون نمونه داده ای رو که از دیتابیس گرفتی و به عنوان ورودی به Adapter دادی رو بگیری:
// imagine you have this class
class MyData{
private String title;
private String body;
public void setTitle(String title){
this.title = title;
}
public String getTitle(){
return title;
}
public void setBody(String body){
this.body = body;
}
public String getBody(){
return body;
}
@Override
public void onItemClick(CoverAdapterView<?> parent, View view, int position, long id) {
MyData data = mAdapter.getItem(position);
String title = data.getTitle();
String body = data.getBody();
Toast.makeText(this, "title is: " + title + " and body is: " + body, Toast.LENGTH_SHORT).show();
}
خیلی ممنون درست شد