@Override protected Widget render(ActivityEntry activity) { ActivityItemView sa = new ActivityItemView(activity); sa.setButtonHandler( new ActivityButtonHandler() { public void handleShow(int top, ActivityItemView sa) { // make sure to remove the selected state. Mouseout is not // always captured if (lastSelected != null) lastSelected.removeStyleName("selected"); showButtons(top); // force selecting the activity if (!sa.getStyleName().equals("selected")) sa.addStyleName("selected"); lastSelected = sa; } public void handleHide() { hideButtons(); } }); return sa; }
public View getView(int position, View convertView, ViewGroup parent) { ActivityInfo info = _mApps.get(position); ActivityItemView i; if (convertView == null) { i = new ActivityItemView(_context, info); } else { i = (ActivityItemView) convertView; } i.setId(position); i.setImageDrawable(info.loadIcon(_context.getPackageManager())); i.setText(""); try { String name = _context.getString(info.labelRes); if (name != null) { i.setText(name); } } catch (NotFoundException ne) { } return i; }
@Override protected void onDestroy() { int count = this.mGrid.getChildCount(); if (count > 0) { for (int i = 0; i < count; i++) { View tmpView = mGrid.getChildAt(i); if (ActivityItemView.class.isInstance(tmpView)) { ((ActivityItemView) tmpView).revoke(); } } } clearAsyncFacebook(true); super.onDestroy(); }