无法在Android Studio中解析符号fab

时间:2015-11-12 17:48:30

标签: java android-studio

我正在开发一款应用,但我遇到了一段代码问题。同一段代码给了我几个不同页面的相同错误。

代码如下:

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);

    buttonSignIn = (Button) findViewById(R.id.buttonSignIN);

    FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG).setAction("Action", null).show();

            buttonSignIn.setOnClickListener(this);
        }
    });
}}

它在下面的行中给出了一个错误,说它无法解析符号fab FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);

2 个答案:

答案 0 :(得分:6)

您可能已删除activity_main中的fab:

This

如果是这样的话,你真的不需要工厂,你可能只需要删除这段代码:

buttonSignIn = (Button) findViewById(R.id.buttonSignIN);

FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View view) {
        Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG).setAction("Action", null).show();

        buttonSignIn.setOnClickListener(this);
    }
});

答案 1 :(得分:0)

添加支持:在build.gradle:module app中设计依赖项,这将解决它

out = IntStream
        .range(1, 10)
        .filter(e -> e % 2 == 0)
        .map(e -> 2 * e)
        .collect(ArrayList<Integer>::new, ArrayList::add, ArrayList::addAll);

将如下所示:

compile 'com.android.support:design:26.+'

}