2 éves lett a BLOG kb, azért KB, mivel a chat.hu kliens kb 2.5 éves:)
2 éves lett a BLOG kb, azért KB, mivel a chat.hu kliens kb 2.5 éves:)
basically this is very easy, we iterate on the listview's items, then we just call
setDrawingCacheEnabled(true)
and
getDrawingCache()
on each childs, then add all Bitmaps to an ArrayList, then we draw all the Bitmaps to a big Bitmap, and here it is, the final code:
public static Bitmap getWholeListViewItemsToBitmap() {
ListView listview = MyActivity.mFocusedListView;
ListAdapter adapter = listview.getAdapter();
int itemscount = adapter.getCount();
int allitemsheight = 0;
List<Bitmap> bmps = new ArrayList<Bitmap>();
for (int i = 0; i < itemscount; i++) {
View childView = adapter.getView(i, null, listview);
childView.measure(MeasureSpec.makeMeasureSpec(listview.getWidth(), MeasureSpec.EXACTLY),
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
childView.layout(0, 0, childView.getMeasuredWidth(), childView.getMeasuredHeight());
childView.setDrawingCacheEnabled(true);
childView.buildDrawingCache();
bmps.add(childView.getDrawingCache());
allitemsheight+=childView.getMeasuredHeight();
}
Bitmap bigbitmap = Bitmap.createBitmap(listview.getMeasuredWidth(), allitemsheight, Bitmap.Config.ARGB_8888);
Canvas bigcanvas = new Canvas(bigbitmap);
Paint paint = new Paint();
int iHeight = 0;
for (int i = 0; i < bmps.size(); i++) {
Bitmap bmp = bmps.get(i);
bigcanvas.drawBitmap(bmp, 0, iHeight, paint);
iHeight+=bmp.getHeight();
bmp.recycle();
bmp=null;
}
return bigbitmap;
}
Tehát, magyarul is: hogyan fotózzunk le egy ListView-et Androidban, borzasztó egyszerűen a ListView elemeit az adapterből vesszük, majd egyenként végigmegyünk a listview child-jain, amiket "lefotózunk" egy Bitmap-be, amit egy ArrayList-hez adunk. Ezután A nagy képre minden egyes List-ben lévő Bitmapet átmásolunk a nagyképbe egymás alá...És kész is!
Ez egy saját workaround, mivel a sima screen-shot androidban csak a képernyőről készít shot-ot, így a listview elemei kimaradnak. Ez az én áthidaló megoldásom.
-lehetőség van a szelvényt vágólapra rakni (képfeltöltés.hu-ra készít egy másolat képet a szelvényről)
-ha már egy meccset megjátszottál, akkor új szelvényre is rakhatod, DE a progi ezt kijelzi, hogy már van olyan szelvényed, ezáltal elkerülhető az, hogy 1 vesztett meccsel több szelvényt veszíts el.
-új ikonok, új app. ikon
-a tabellán az utolsó X meccs lekérdezése
-design update
-élő eredményeken favorit kiválasztása (lista elejére ugrik, mivel egyidőben nagyon sok meccs van) hosszú klikkre /50 mpercenként frissít eredményt/
-mai eredmények + favoritok kiválasztása itt is hosszú klikkre
-bekerült pár új tabella is, orosz, meg még vagy 4 új, ezeket naponta frissíti 6 óránként
-tippmixes cuccokat 10 percenként frissíti, hogy ne legyen nagy adatlekérés
-élő eredményeket 50 mpercenként
-befejezett eredményeket 50 percenként