نحوه دریافت اطلاعات از لیست ویو در همان اکتیوتی که لیست ما را نشان می دهد
سلام و عرض ادب خدمت تمام برنامه نویسان عزیز:
در آموزش ها یاد گرفتیم وقتی اطلاعات یک رکورد از لیست ویو می خواستیم تغییر بدهیم کافی بود که به این صورت عمل کنیم
Intent intent = new Intent(G.CurrentActivity, EditContact.class);
intent.putExtra("POSITION", position);
G.CurrentActivity.startActivity(intent);
و بعد در کلاس EditContact این حرکت رو می زدیم
if (extras != null)
{
position = extras.getInt("POSITION");
}
final StructNote node = G.NotesPerson.get(position);
edtNameContact.setText(node.Name);
edtNumberContact.setText(node.sender);
این قسمت از کد را در oncreat کلاس EditContact می نویشتیم . وبعد تغییراتی که می خواستیم انجام گیرد را در edtNameContact
وارد می کردیم .
حال سوال من اینجاست : چطور می شود این تغییرات را در همان اکتیوتی که لیست ویو وجود دارد انجام داد
یعنی که دو فیلد edtNameContact و edtNumberContact را در همان اکتیوتی روی لیست ویو کلیک کنم و محتوای آن در ادیت تکس ها قرار گیرد
و پس تغییرات مجدد در لیست ویو به روز رسانی شود.
مشکل اصلی در این جاست که Adapter جدا است و اکتیوتی جدا به این خاطر سردرگم شده ام.
ببینید ، شما توی رویداد کلیک میگید این کار انجام بشه
Intent intent = new Intent(G.CurrentActivity, EditContact.class);
intent.putExtra("POSITION", position);
G.CurrentActivity.startActivity(intent);
حالا چیزی که شما میخواین اینه که مقدار یه edittext ست بشه دیگه پس :
public edtname;
oncreate()
{
edtname = (EditText) findview ..
]
//بجایه اون اینتنت
edtname.settext("value");
حالا value رو از جایی که میخواین بگیرین مثل item.title یا هرچی
public class ActivityTheme extends Activity {
TextView text;
@Override
public void onCreate(Bundle savedInstanceState) {
// ببینید اون بالا تعریف شد ، اینجا مقدار میدیم ، حالا همه جا میشه استفاده کردش
Textview text = (TextView) findviewbyid(R.id.text);
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .