/* * Copyright 2012 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.example.android.animationsdemo; import android.app.Activity; import android.app.ListActivity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.ArrayAdapter; import android.widget.ListView; /** * The launchpad activity for this sample project. This activity launches other activities that * demonstrate implementations of common animations. */ public class MainActivity extends ListActivity { /** * This class describes an individual sample (the sample title, and the activity class that * demonstrates this sample). */ private class Sample { private CharSequence title; private Class activityClass; public Sample(int titleResId, Class activityClass) { this.activityClass = activityClass; this.title = getResources().getString(titleResId); } @Override public String toString() { return title.toString(); } } /** * The collection of all samples in the app. This gets instantiated in {@link * #onCreate(android.os.Bundle)} because the {@link Sample} constructor needs access to {@link * android.content.res.Resources}. */ private static Sample[] mSamples; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Instantiate the list of samples. mSamples = new Sample[]{ new Sample(R.string.title_crossfade, CrossfadeActivity.class), new Sample(R.string.title_card_flip, CardFlipActivity.class), new Sample(R.string.title_screen_slide, ScreenSlideActivity.class), new Sample(R.string.title_zoom, ZoomActivity.class), new Sample(R.string.title_layout_changes, LayoutChangesActivity.class), }; setListAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_1, android.R.id.text1, mSamples)); } @Override protected void onListItemClick(ListView listView, View view, int position, long id) { // Launch the sample associated with this list position. startActivity(new Intent(MainActivity.this, mSamples[position].activityClass)); } }