[LayoutAnimation5.java]
public class LayoutAnimation5 extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
loadApps();
setContentView(R.layout.layout_animation_5);
GridView grid = (GridView) findViewById(R.id.grid);
grid.setAdapter(new AppsAdapter());
}
private List<ResolveInfo> mApps;
private void loadApps() {
Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
mApps = getPackageManager().queryIntentActivities(mainIntent, 0);
}
public class AppsAdapter extends BaseAdapter {
public View getView(int position, View convertView, ViewGroup parent) {
ImageView i = new ImageView(LayoutAnimation5.this);
ResolveInfo info = mApps.get(position % mApps.size());
i.setImageDrawable(info.activityInfo.loadIcon(getPackageManager()));
i.setScaleType(ImageView.ScaleType.FIT_CENTER);
i.setLayoutParams(new GridView.LayoutParams(36, 36));
return i;
}
public final int getCount() {
return Math.min(32, mApps.size());
}
public final Object getItem(int position) {
return mApps.get(position % mApps.size());
}
public final long getItemId(int position) {
return position;
}
}
}
[layout_animation_5.xml]
<GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/grid"
android:layoutAnimation="@anim/layout_grid_inverse_fade"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:numColumns="auto_fit"
android:columnWidth="60dp"
android:stretchMode="columnWidth"
android:gravity="center" />
'old > API_Demo' 카테고리의 다른 글
Views_Layout Animation_Nested Animation (0) | 2010.04.26 |
---|---|
Views_Layout Animation_Wave Scale (0) | 2010.04.26 |
Views_Layout Animation_Randomize (0) | 2010.04.26 |
Views_Layout Animation_Reverse Order (0) | 2010.04.26 |
Views_Layout Animation_List Cascade (0) | 2010.04.26 |