adlin2000
یک شنبه 07 مهر 1392, 09:10 صبح
از یکViewpager برای گالری استفاده کرده ام . مشکلی که دارم نمی تونم به کنترل های داخل viewpager که Inflate شده اند ، دسترسی داشته باشم .
مثال های زیادی را در اینترنت دیدم اما هیچکدام نحوه دسترسی یا گرفتن مقادیر داخل ویجت را نگفته بودن یا من ندیدم ، حالا نمی تونم به طور صحیح مقادیری را از ویجت Viewpager بگیرم . مثلاً من تو ویجت گالری به کنترل های داخل آن به این صورت دسترسی داشتم :
gallery.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
TextView tvid = (TextView) arg1.findViewById(R.id.tvid);
getrowlist = (String) tvid.getText();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
برای دسترسی به کنترل های این ویجت هر کاری کردم حتی نزدیکترین حالت رویداد setOnPageChangeListener را هم امتحان کردم :
viewPager.setOnPageChangeListener( new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
TextView tv = (TextView)viewPager.findViewById(R.id.country);
txt.setText(tv.getText());
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
اما در این حالت هم با تغییر صفحات ، همیشه مقداری را برنمی گرداند .(گاهی بر می گردونه و گاهی هم نه)
از نظرات و پیشنهادات استقبال می شود :لبخندساده:
مثال های زیادی را در اینترنت دیدم اما هیچکدام نحوه دسترسی یا گرفتن مقادیر داخل ویجت را نگفته بودن یا من ندیدم ، حالا نمی تونم به طور صحیح مقادیری را از ویجت Viewpager بگیرم . مثلاً من تو ویجت گالری به کنترل های داخل آن به این صورت دسترسی داشتم :
gallery.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
TextView tvid = (TextView) arg1.findViewById(R.id.tvid);
getrowlist = (String) tvid.getText();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
برای دسترسی به کنترل های این ویجت هر کاری کردم حتی نزدیکترین حالت رویداد setOnPageChangeListener را هم امتحان کردم :
viewPager.setOnPageChangeListener( new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
TextView tv = (TextView)viewPager.findViewById(R.id.country);
txt.setText(tv.getText());
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
اما در این حالت هم با تغییر صفحات ، همیشه مقداری را برنمی گرداند .(گاهی بر می گردونه و گاهی هم نه)
از نظرات و پیشنهادات استقبال می شود :لبخندساده: