I downloaded the latest SDK version and when I created a new Android project the MainActivity
that automatically generated extends ActionBarActivity
, but I want to extend Activity
.
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment()).commit();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
/**
* A placeholder fragment containing a simple view.
*/
public static class PlaceholderFragment extends Fragment {
public PlaceholderFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container,
false);
return rootView;
}
}
}
To code the elements of ActionBar, create a new directory in the resource folder of the application project files. Right-click on the res folder and selects New -> Directory. Give the name “menu” to the new directory. Further, create a new Menu Resource File by right click on the menu directory.
Unless some third-party library you are using insists upon an ActionBarActivity , you should prefer AppCompatActivity over ActionBarActivity . So, given your minSdkVersion in the 15-16 range: If you want the backported Material Design look, use AppCompatActivity.
To use the ActionBar utility methods, call the activity's getSupportActionBar() method. This method returns a reference to an appcompat ActionBar object. Once you have that reference, you can call any of the ActionBar methods to adjust the app bar. For example, to hide the app bar, call ActionBar.
ActionBarActivity is for backwards-compatibility. So the Android Actionbar will also work on older devices, see documentation.
Base class for activities that use the support library action bar features.
You can add an ActionBar to your activity when running on API level 7 or higher by extending this class for your activity and setting the activity theme to Theme.AppCompat or a similar theme.
It is a subclass of FragmentsActivity and FragmentsActivity extends Activity. ==> so don't worry all things you could do with normal Activities you can also do with an ActionBarActivity.
If you want to extend Activity class, you may check "Empty Activity" during the project creation trajectory.
Simply Replace ActionBarActivity to Activity Then go to top of the code and replace import android.support.v7.app.ActionBarActivity; to import android.app.Activity;
My guess is when you created the app, you choose the Action bar setting in eclipse. Please notice ActionBarActivity is an extension of Activity, so all features present in Activity will be present in ActionBarActivity.
You can simply replace the ActionBarActivity with Activity since ActionBarActivity is an extension of Activity. You can refer the class hierarchy here: http://developer.android.com/reference/android/support/v7/app/ActionBarActivity.html
Nowadays latest Android SDK ActionbarActivity only. which is from IDE and Google. No Problem with that. ActionBarActivity Facilitate to your application which works on Older API also. Don't worry. That's is not problem.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With