找不到符号方法 getSupportActionBar()

cannot find symbol method getSupportActionBar()

我知道这个问题已经发布了很多次,但即使我尝试了很多来自 Stack Overflow.

的解决方案,我仍然无法解决
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarActivity;
import com.example.project.myapplication.API.InfoAPI;
import com.example.project.myapplication.Adapter.TabsFragmentPagerAdapter;


public class Edit extends FragmentActivity implements ActionBar.TabListener {

    private ViewPager viewPager;
    private ActionBar actionBar;
    private TabsFragmentPagerAdapter tabsAdapter;
    private String[] activities = new String[]{"Information","Work Force","Work Details"};
    ListView listViewEdit;
    InfoAPI sqlcon;
    private MyDatabaseHelper dbHelper;
    private SQLiteDatabase database;
    private SimpleCursorAdapter dataAdapter;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.edit);
        viewPager = (ViewPager) findViewById(R.id.viewPager);
        tabsAdapter = new TabsFragmentPagerAdapter(getSupportFragmentManager());
        viewPager.setAdapter(tabsAdapter);
        actionBar = (ActionBarActivity)getApplicationContext().getSupportActionBar();
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        for(int i=0; i<3; i++){
            actionBar.addTab(actionBar.newTab().setText(activities[i]).setTabListener(this));
        }

这一行有错误actionBar = (ActionBarActivity)getApplicationContext().getSupportActionBar();

错误

Error:(48, 63) error: cannot find symbol method getSupportActionBar()
Error:(48, 21) error: incompatible types: ActionBarActivity cannot be converted to ActionBar

您需要将 FragmentActivity 更改为 ActionBarActivity 由于FragmentActivity中没有提供此方法,所以更改。

public class mainActivity extends ActionBarActivity

检查这个Link

Edit 扩展 AppCompatActivity 而不是 FragmentActivityAppCompatActivity 扩展了 FragmentActivity 并添加了对 ActionBar 的支持。你可以阅读更多here

替换

public class Edit extends FragmentActivity implements ActionBar.TabListener

public class Edit extends ActionBarActivity implements ActionBar.TabListener

你行

actionBar = (ActionBar)getApplicationContext().getSupportActionBar();