اعظم نوری

مرتب سازی آیتم های یک لیست بر اساس تاریخ یا حروف الفبا

9 ارسال در این موضوع قرار دارد

کسی میدونه چطور میشه آیتم های یک لیست ویو رو بر اساس تاریخ یا حروف الفبا مرتب کرد؟

ممنون میشم اگه کمک کنید.

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

باید از الگوریتم های مرتب سازی استفاده کنید و در مورد مرتب سازی بر اساس تاریخ می توانید یک شی از date  ساخته و مقادیر تاریختان را به اضافه ساعت و دقیقه در آن ست کنید سپس مقدار تابع 

date.getTimeInMillis();

را می گیرید.

این کار را برای همه تاریخ هایتان انجام می دهید و سپس از الگوریتم های مرتب سازی برای مرتب کردن استفاده می کنید.

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

ببخشید من تازه وارد دنیای اندروید شدم، اطلاعاتم خیلی کمه، اگه میشه بیشتر راهنمایی کنید، ممنون میشم.

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

کسی نیست که بتونه راهنماییم کنه؟

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
سلام

دوست عزیز لینکهای زیر و ببین مرتب سازی توی لیست سفارشیه

http://stackoverflow.com/questions/19705004/sorting-listview-in-android

http://www.vogella.com/tutorials/AndroidListView/article.html

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

من یه لیست ویوی سفارشی با hashmap ساختم، نمی دونم چطور باید فیلد title رو بر اساس حروف الفبا مرتب کنم. اینم کد لیستمه:

		listview1 = (ListView) findViewById(R.id.listview1);	dbh = new Database(getApplicationContext());	db = dbh.getReadableDatabase();	ArrayList> arraylist = new ArrayList>();	Cursor c = db.rawQuery("SELECT * FROM work where status=0", null);	for (; c.moveToNext() {		HashMap map = new HashMap();		map.put("id", c.getString(0));		map.put("title", c.getString(1));		map.put("comment", c.getString(2));		map.put("date", c.getString(3));		if (c.getString(4).equals("0")) {			map.put("status",					getResources().getString(R.string.string_doings));		}		arraylist.add(map);	}	Adapter = new ListviewAdapter(getApplicationContext(), arraylist);	listview1.setAdapter(Adapter);

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

به لطف خدا و استاد سرسیفی، جوابو پیدا کردم. برای استفاده دوستان:

		btn_sort = (Button) findViewById(R.id.btn_sort);	btn_sort.setOnClickListener(new OnClickListener() {		@Override		public void onClick(View arg0) {			// TODO Auto-generated method stub			ArrayList> arraylist = new ArrayList>();			Cursor d = db.rawQuery("SELECT * FROM work where status=0 order by title asc",					null);			for (; d.moveToNext() {				HashMap map = new HashMap();				map.put("id", d.getString(0));				map.put("title", d.getString(1));				map.put("comment", d.getString(2));				map.put("date", d.getString(3));				if (d.getString(4).equals("0")) {					map.put("status",							getResources()									.getString(R.string.string_doings));				}				arraylist.add(map);			}			Adapter = new ListviewAdapter(getApplicationContext(),					arraylist);			listview1.setAdapter(Adapter);		}	});

به جای asc (صعودی) می تونید از desc (نزولی) هم استفاده کنید.

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

به لطف خدا و استاد سرسیفی، جوابو پیدا کردم. برای استفاده دوستان:

		btn_sort = (Button) findViewById(R.id.btn_sort);
	btn_sort.setOnClickListener(new OnClickListener() {

		@Override
		public void onClick(View arg0) {
			// TODO Auto-generated method stub
			ArrayList> arraylist = new ArrayList>();

			Cursor d = db.rawQuery("SELECT * FROM work where status=0 order by title asc",
					null);

			for (; d.moveToNext() {

				HashMap map = new HashMap();

				map.put("id", d.getString(0));
				map.put("title", d.getString(1));
				map.put("comment", d.getString(2));
				map.put("date", d.getString(3));
				if (d.getString(4).equals("0")) {
					map.put("status",
							getResources()
									.getString(R.string.string_doings));
				}
				arraylist.add(map);

			}
			Adapter = new ListviewAdapter(getApplicationContext(),
					arraylist);
			listview1.setAdapter(Adapter);

		}

	});

به جای asc (صعودی) می تونید از desc (نزولی) هم استفاده کنید.

سلام ، ببخشید من میخوام اون ارایه ای ک دارم رو بر عکس نشون بده یعنی اخرین کلمه از ارایم رو تو ایتم اول قرار بده ، از ریسایکلر استفاده کردم ، راهی هست ، میخوام اخرین متنی ک ب دیتابیسم اضافه شد تو ریسایکر در اولین ایتم نمایش بده ، باید از این کدی ک نوشتین استفاده کنم یا چیز دیگه ای باید بنویسم ، ممنون میشم اگ جوابمو بدین :S:D

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

بر فرض مثال شما از همون کد دوستمون استفاده می کنید، شما باید فقط بجای asc از desc استفاده کنید، توی جوابشونم هم ذکر کردن.[shcode=java] Cursor d = db.rawQuery("SELECT * FROM work where status=0 order by title DESC",

                        null);[/shcode]

به اشتراک گذاری این پست


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری