PDA

View Full Version : گرید برای نمایش رکوردهای جدول بانک اطلاعاتی؟



idic1
دوشنبه 08 تیر 1394, 02:05 صبح
با سلام

همه زبانهای برنامه نویسی، کنترلی تحت عنوان دیتا گرید (و یا عناوین مشابه) برای نمایش رکوردهای جدول بانک اطلاعاتی دارند
که معمولا با یک یا دو خط کد نوشتن اطلاعات جدول را نمایش میدهند. قطعا در زبانهای C#‎‎ یا دلفی یا VB به کرات دیده اید و استفاده کرده اید

بیش از یک هفته است دنبال چنین چیزی برای اندروید میگردم و ته اینترنت رو درآوردم ولی یافت نشد
آیا واقعا وجود ندارد یا من نمیدونم دنبال چی باید بگردم؟

زبان برنامه نویسی اصلی من دلفی است (10 ساله دارم ازش استفاده میکنم) و یک ماهی است برنامه نویسی اندروید را از طریق اندروید استدیو شروع کردم
زجری که تو این مدت کوتاه دارم با اندروید میکشم در تمام طول 10 سال با دلفی نکشیدم

چیزی که دنبالش میگردم تو دلفی اسمش DBGrid است. یه چیزی مشابه این تو اندروید میخوام و بانک اطلاعاتی هم SQL Server است

کنترل های ListView و GridView اندروید استدیو منظورم نیست چون با این کنترلها شونصد هزار خط برنامه باید نوشت تا بشه اطلاعات یک جدول رو نشان داد.تازه فقط هم بدرد هم جدول میخوره و برای یه جدول دیگه باید داستان رو تکرار کرد


پیشاپیش از راهنمائی دوستان سپاسگزارم

sobhmoud
دوشنبه 08 تیر 1394, 04:19 صبح
بهتر بود قبل زدن تاپیک یکم تو گوگل (https://www.google.com/search?newwindow=1&q=datagrid+in+android&spell=1&sa=X&ei=OISQVcrqMYOUUYK5kaAD&ved=0CBkQvwUoAA&biw=1366&bih=657)می گشتین .
تو اندروید همچین کنترلی نیست یا باید خودت بسازی یا از کتابخونه زیر استفاده کنی .
https://github.com/karimmedusa/DataGrid
http://www.codeproject.com/Tips/873850/Automatic-Android-DataGrid-from-JSON
http://www.androidjetpack.com/Home/AndroidDataGrid

idic1
دوشنبه 08 تیر 1394, 13:35 عصر
داداش ممنون از اینکه وقت گذاشتی و جواب دادی اما
من میگم "بیش از یک هفته است دنبال چنین چیزی برای اندروید میگردم و ته اینترنت رو درآوردم ولی یافت نشد"
شما میگی "بهتر بود قبل زدن تاپیک یکم تو گوگل می گشتین". !!!!!

این لینک هائی که شما گذاشتی یا معرفی کنترلهای پولی هست یا راهنمائی جهت نوشتن شونصد هزار خط برنامه برای ساخت دیتا گرید(که من هم در بالا اشاره کردم این بدر نمیخوره)
در زبانهای برنامه نویسی دیگه دریافت اطلاعات از دیتابیس و نمایش آن در فرم و در قالب گرید کلا سه خط کد نویسی میخواد نه 16000خط
من ده ها برابر این لینک هائی که شما گذاشتی پیدا کردم و بررسی کردم

اما باز هم تشکر میکنم از شما به خاطر زحمتی که کشیدی

gilas1368
دوشنبه 08 تیر 1394, 13:58 عصر
بهتر بود قبل زدن تاپیک یکم تو گوگل (https://www.google.com/search?newwindow=1&q=datagrid+in+android&spell=1&sa=X&ei=OISQVcrqMYOUUYK5kaAD&ved=0CBkQvwUoAA&biw=1366&bih=657)می گشتین .
تو اندروید همچین کنترلی نیست یا باید خودت بسازی یا از کتابخونه زیر استفاده کنی .
https://github.com/karimmedusa/DataGrid
http://www.codeproject.com/Tips/873850/Automatic-Android-DataGrid-from-JSON
http://www.androidjetpack.com/Home/AndroidDataGrid


داداش ممنون از اینکه وقت گذاشتی و جواب دادی اما
من میگم "بیش از یک هفته است دنبال چنین چیزی برای اندروید میگردم و ته اینترنت رو درآوردم ولی یافت نشد"
شما میگی "بهتر بود قبل زدن تاپیک یکم تو گوگل می گشتین". !!!!!

این لینک هائی که شما گذاشتی یا معرفی کنترلهای پولی هست یا راهنمائی جهت نوشتن شونصد هزار خط برنامه برای ساخت دیتا گرید(که من هم در بالا اشاره کردم این بدر نمیخوره)
در زبانهای برنامه نویسی دیگه دریافت اطلاعات از دیتابیس و نمایش آن در فرم و در قالب گرید کلا سه خط کد نویسی میخواد نه 16000خط
من ده ها برابر این لینک هائی که شما گذاشتی پیدا کردم و بررسی کردم

اما باز هم تشکر میکنم از شما به خاطر زحمتی که کشیدی


اول میخوام ازتون بپرسم شما چقدر کدنویسی جاوا رو میدونید؟
البته قصد جسارت ندارم
اما توی لینک دومی ک دوستمون گذاشتن و مربوط ب سایت githut هستش ب ساده ترین شکل ممکن براتون ی گرید رو پر کرده دیگ از این ساده تر نداریم
16000 خط کد هم نداره صرفا ب ساده ترین طریق ممکن اومده ی لیست تعریف کرده و اطلاعات رو ب گرید پاس داده

حالا من واقعا موندم ک شما چطوری میگید: "بیش از یک هفته است دنبال چنین چیزی برای اندروید میگردم و ته اینترنت رو درآوردم ولی یافت نشد"

واقعا شما ک اینهمه فضای نت رو گشتید ی بار وقت گذاشتید ببینید طرف چ کدی نوشته؟

اگ اینهمه ک وقتتون رو صرف گشتین کردین صرف خوندن یکی از کدا میکردید تا الان مشکلتون حل شده بود

idic1
دوشنبه 08 تیر 1394, 14:04 عصر
عزیزم از شما هم تشکر میکنم
کاش اینقدر زود هم دیگر رو قضاوت نمیکردیم
من کد رو هم همونجا خوندم هم دانلود کردم تا در اندروید استدیو وارد کنم
ولی به واسطه ناقص بودن ( همراه نبودن Library مورد استفاده) بدرد نخورد
قراره همدیگه رو راهنمائی کنیم قرار نیست سر کار بزاریم که

باز هم تشکر از وقتی که صرف این حقیر کردید
پاینده باشید

gilas1368
دوشنبه 08 تیر 1394, 14:28 عصر
عزیزم از شما هم تشکر میکنم
کاش اینقدر زود هم دیگر رو قضاوت نمیکردیم
من کد رو هم همونجا خوندم هم دانلود کردم تا در اندروید استدیو وارد کنم
ولی به واسطه ناقص بودن ( همراه نبودن Library مورد استفاده) بدرد نخورد
قراره همدیگه رو راهنمائی کنیم قرار نیست سر کار بزاریم که

باز هم تشکر از وقتی که صرف این حقیر کردید
پاینده باشید

دوست خوب من اولا ک کسی سرکار نذاشته شما رو
ثانیا تا جایی ک من اون کد رو دیدم با اکلیپس نوشته شده ن با اندروید استدیو درنتیجه شما اثری از فایل های gradle داخلش پیدا نمیکنید و باز هم در نتیجه تبدیل پروژه های این IDE به IDE اندروید استدیو امکانپذیر نیست
ثالثا بازم تا جایی ک من میبینم داخل این برنامه کتابخونه خاصی استفاده نشده (اگ اسم اون کتابخونه ای رو ک بگید ممنون میشم)
و اما رابعا:
این برنامه کلا از 3 تا کلاس جاوا تشکیل شده :
1- کلاس student ک ی مدل هست (اگ با entity framework یا فریمورک های جاوایی مثل ormlite کار کرده باشید این کلاس میتونه ی مدل انتزاعی از جدولتون باشه)
2- کلاس CustomeAdapter ک این کلاس همون کار dataSource در برنامه های دات نتی رو براتون انجام میده نتها فرقش اینه ک اونجا قبلا براتون نوشتن اما اینجا خودتون باید آستینا رو بالا بزنید و برای خودتون بنویسیدش
3- کلاس DataGridActivity ک همون اکتیویتی هستش و داخل اومده از کلاس student ی لیست ساخته و ب کلاس customeAdapter پاس داده و در آخر خروجی کلاس cutomeAdapter رو داخل ی متغیر ریخته و ب متد setAdapter گرید پاس داده

idic1
دوشنبه 08 تیر 1394, 14:42 عصر
ظاهرا چون اندروید استدیو جدیدتره کمتر کسی با اون آشنائی داره و همه اکلیپس کار کردن. ایمپورت پروژه از اکلیپس به اندروید استدیو به سادگی صورت میگیره و من نزدیک به 50 نمونه برنامه ایکلیپس رو با اندروید استدیو کامپایل و اجرا کردم
اسم اون کتابخونه appcompat میباشد

از راهنمائی شما مشخصه که کار بسادگی محیط های دلفی یا C# یا VB نیست و نباید دنبال راهکار سه خطی برای این مسئله در اندروید باشم
و حالا که شما راهنمائی کردید این سوال هم بپرسم که
مثلا اگر بخواهیم در برنامه مان دو جدول مختلف را در دو گرید مختلف و در دو اکتیویتی جدا داشته باشیم باید مراحل 1و2و3 که گفتید را باید 2 بار تکرار کنیم. و به همین نسبت برای 20 جدول این عملیات باید 20 بار تکرار شود؟
ممنون از راهنمائی شما دوست گرامی

gilas1368
دوشنبه 08 تیر 1394, 14:52 عصر
ی سری از پروژه ها رو میشه از ایکلیپس ب اندروید استدیو تبدیل کرد
اما پروژه های پیچیده اماکانش نیس
حداقل من نتونستم
ضمن اینک من خودم 3 ساله کدام رو داخل اندروید استدیو میزنم
اما در مورد سوالتون هم باید بگم بله باید تمام موارد رو برای دیتاهاتون تکرار کنین البته این رو بگم ک برای دیتاهای غیرمتمایز (ینی ی گرید اطلاعات دانشجو و ی گرید درس هایی ک تا حالا موفق شده بگذرونه) باید این روال رو انجام بدید
اگا داخل دوتا گرید میخواید فقط اطلاعات دانشجو رو نمایش بدید فقط کافیه ک لیستتون رو بسازید و ب customeAdapter پاسش بدید

کتابخونه appcompat هم برای استفاده از ی سری از امکانات ک در ورژن های بالاتر اندروید رونمایی شده، در ورژن های پائین اندروید هستش

idic1
سه شنبه 09 تیر 1394, 02:52 صبح
دوست عزیز این نمونه برنامه معرفی شده در لینک زیر احتمالا بتونه مشکل منو حل کنه
https://github.com/karimmedusa/DataGrid
ولی در اندروید استدیو که ایمپورت کردم چند تا خطا میده
به نظرم خطاهاش خیلی اساسی نیست و یه باتجربه راحت بتونه رفعش کنه

اگه بتونی خطاهاش رو رفع کنی و یه جائی آپلود کنی ممنون میشم
با تشکر

djtrex
سه شنبه 09 تیر 1394, 14:03 عصر
دوست عزیز این نمونه برنامه معرفی شده در لینک زیر احتمالا بتونه مشکل منو حل کنه
https://github.com/karimmedusa/DataGrid
ولی در اندروید استدیو که ایمپورت کردم چند تا خطا میده
به نظرم خطاهاش خیلی اساسی نیست و یه باتجربه راحت بتونه رفعش کنه

اگه بتونی خطاهاش رو رفع کنی و یه جائی آپلود کنی ممنون میشم
با تشکر

این پروژه ای که دوست عزیز فرستادند کلا ۳ تا فایل جاوا داره یکی activity یکی custom adapter یکی هم یه کلاس ساده (POJO) برای شی student
https://github.com/karimmedusa/DataGrid/tree/master/src/ir/home/datagrid

همین ۳ تارو توی پروژه تون کپی کنید مشکلتون حل میشه. (یا حتی بعضی از کدهاشو که نیاز دارید)

شما توی اینترنت custom adapter سرچ کنید کلی چیز پیدا میکنید. خود اندروید یه cursor adapter هم داره مستقیم از دیتابیس میگیره. یا Realm که دیتابیس برای سیستم های موبایل: https://realm.io/ اونم RealmAdapter داره مستقیم از دیتابیس میگیره. فقط برای view خاص باید خودتون inflate کنید. (custom adapter + viewholder سرچ کنید!)


--------------------------
در مورد اندروید استدیو هم فقط همینو بگم از ماه دی (اول سال میلادی جدید) گوگل دیگه هیچ پشتبیانی از eclipse و adt نمیکنه!
http://www.xda-developers.com/google-set-to-end-support-for-adt-in-eclipse/
http://farnet.ir/1394/04/112415/google-killing-support-eclipse-android-developer-tools/

اکثر کتابخانه هایی که توی android-arsenal.com هم هست الان gradle دارن.