تنها کاری که میتونید بکنید اینه که کلا استفاده از لیستنر لیست ویو رو بیخیال شید و لیستنر رو داخل ادپتر لیست ویو برای یک layout بگذارید ، اگر متوجه نشدید بگید جزیی تر توضیح بدم.
بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ
اتصال دیتا بیس با لیست ویو(چرا هیچکس جواب نمیده)
مدیریت گفتگو
آخرین تغییر: 10 سال پیش
سلام من چند وقت پیش هم این سوال و پرسیدم ولی به نتیجه ای نرسیدم من یه برنامه نوشتم که بتونه دیتابیس و نشون بده براش یه کلاس تعریف کردم که اسم هر قسمت رو از دیتابیس بگیره و در یک لیست ویو نمایش بده بعد براش یک کلاس دیگه تعریف کردم که بتونه با کلیلک روی لیست ویو متن مربوط به اون اسم رو نشون بده اما متاسفانه وقتی روی لیست ویو کلیک میشه هیچ عکس العملی نشون نمیده برا اتصال دو کلاس از کد زیر استفاده کردم
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
Intent i = new Intent(List.this, Main.class);
i.putExtra("name", Name[position]);
startActivity(i);
}
پاسخها 3
این کلاس مربوطط به لیست ویو
public class List extends ListActivity { private ActivityDatabase db; private String[] Name; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.list); db = new ActivityDatabase(this); refresh(); setListAdapter(new AA()); } @Override protected void onListItemClick(ListView l, View v, int position, long id) { Intent i = new Intent(List_season.this, Main_matn.class); i.putExtra("name", Name[position]); startActivity(i); } class AA extends ArrayAdapter<String> { public AA() { super(List.this, R.layout.row_season, Name); } @Override public View getView(int position, View convertView, ViewGroup parent) { LayoutInflater in = getLayoutInflater(); View row = in.inflate(R.layout.row_season, parent, false); TextView name = (TextView) row.findViewById(R.id.row_season_name); name.setText(Name[position]); return (row); } } private void refresh() { db.open(); int s = db.count("table", "Name"); Name = new String[s]; for (int i = 0; i < s; i++) { Name[i] = db.Seasion_display("table", i); } db.close(); } }
اینم کلاس اصلی
public class MainActivity extends Activity { private ActivityDatabase db; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btn = (Button) findViewById(R.id.button1); db = new ActivityDatabase(this); db.useable(); btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { Intent i = new Intent(MainActivity.this, List.class); startActivity(i); } }); } }
نظرات
این مشکل خیلی داره از من زمان و انرژی میگیره میشه یکی لطف کنه و به من کمک کنه ؟
نظرات
برای چندمین بار دارم کامنت میزارم ولی کسی جواب نمیده یعنی اینقدر سخته؟
نظرات
توضیحات بیشتر لطفا، پس کد هایی که نوشتم مشکلی نداره؟
توضیحات بیشتر لطفا، پس کد هایی که نوشتم مشکلی نداره؟
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .
ویرایش
پیام
نظرات