Search code examples
androidandroid-intentintentfilterstart-activity

Start Android activity from list of activities


I am working on one android app, and in which i have one menu that shows list of Activity name.Upon clicking of any item from menu should start that specific Activity.

One way i know to do this is,

String classes[]= {"firstActivity","DetailActivity"}; intent i =new Intent(pkg_name+classes[position]);startActivity(i); 

where position=0 or 1. And for that i need to write in AndroidManifest.xml file below code for each Activity

<activity
        android:name="com.example.day1.DetailActivity"
         >
        <intent-filter>
            <action android:name="com.example.day1.DetailActivity" />
            <category android:name="android.intent.category.DEFAULT" />

        </intent-filter>
    </activity>

But i want just

<activity android:name=".DetailActivity"></activity>

simple code. Dont want to use intent-filter So please give me alternative i can use in this case.


Solution

  • Or the other way round

    Class classes[] = [ firstActivity.class, DetailActivity.class];
    Intent i = new Intent(this, classes[position]);
    startActivity(i);
    

    Then, when you want to display the name of the activities, use classes[position].getSimpleName();