ActionBar和FragmentTransaction的问题

时间:2016-05-30 11:52:32

标签: java android android-actionbar fragmenttransaction

我正在使用Android Studio中的Android应用程序,我在制作Bar Tabs时遇到了一些问题。我使用本教程:click! - youtube到目前为止,一切都很好,我的意思是滑动。

以下是我的导入,扩展程序,类名等。

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentTransaction;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;

import java.util.List;
import java.util.Vector;

public class ProductOrganiser extends AppCompatActivity {
ActionBar.TabListener tabListener = new ActionBar().TabListener() {
            @Override
            public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) {

            }
            @Override
            public void onTabOnselected(ActionBar.Tab tab, FragmentTransaction ft) {

            }
            @Override
            public void onTabReslected(ActionBar.Tab tab, FragmentTransaction ft) {

            }
        };

我有一些问题。首先,new ActionBar().显示消息:“'ActionBar'是抽象的;无法实例化”,更多FragmentTransaction显示消息:“预期表达式”,@Override - “注释不是允许在这里“。

This should explain everything

如果您向我提供了有关此问题的完整说明,我将不胜感激。

2 个答案:

答案 0 :(得分:0)

更改

new ActionBar().TabListener()

new ActionBar.TabListener()

此外,不推荐使用ActionBar.TabListener。考虑使用替代方案。

答案 1 :(得分:0)

首先,您想要访问界面 ActionBar.TabListener ,而不是onTabOnselected更改为onTabUnselected

其次,您输入错误,将onTabReslected更改为onTabReselected并将 ActionBar.TabListener tabListener = new ActionBar.TabListener() { @Override public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) { } @Override public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction ft) { } @Override public void onTabReselected(ActionBar.Tab tab, FragmentTransaction ft) { } }; 更改为{{1}}。您需要覆盖接口方法,因此不能给它指定不同的名称。

总之,试试这个:

{{1}}