0

在操作欄中創建選項卡我是Android的絕對初學者。現在我開始學習android。我即將創建帶有標籤的操作欄。但是我的Android SDK版本太低。所以我嘗試使用舊的方式創建使用ActionBarActivity標籤的操作欄。我也想知道新舊方法。現在我這樣做。無法使用ActionBarActivity

我的活動類

public class MainActivity extends ActionBarActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     ActionBar bar = getSupportActionBar(); 

     bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 

     for(int i = 1;i<=3;i++){ 
      ActionBar.Tab tab = bar.newTab(); 
      tab.setText("Tab" + i); 
      bar.addTab(tab); 
     } 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.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(); 

     //noinspection SimplifiableIfStatement 
     if (id == R.id.action_settings) { 
      return true; 
     } 

     return super.onOptionsItemSelected(item); 
    } 
} 

Styles.xml

<resources> 

    <!-- Base application theme. --> 
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
     <!-- Customize your theme here. --> 
    </style> 

</resources> 

但是當我運行我的應用程序。這是拋出錯誤。請問我的代碼有什麼問題?我該如何糾正它?

+1

向我們展示了logcat的RROR – Virthuss

+1

'ActionBarActivity'已被棄用。使用'AppCompactActivity'和'ToolBar'。 – Piyush

+0

我也想知道舊的方式 –

回答

0

請勿使用ActionBarActivity,因爲它已被棄用。

並且使用的是:

Theme.AppCompat.Light.DarkActionBar 

有:ActionBarActivity

將其更改爲在您的Java代碼AppCompatActivityActivity)。

這應該解決問題。如果你正在使用AppCompat課程:

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbarmain); 
     setSupportActionBar(toolbar); 

similiar問題:

Android getActionBar vs getSupportActionBar?

+0

我目前的SDK太低。 –

+0

只需更新即可。:) – Mohsen

+0

是的。我做的。之前我沒有事件知道如何更新它。我是絕對的初學者。 :) –