无法在Snackbar中解决方法setAction()错误

时间:2015-10-11 17:12:47

标签: android snackbar

我制作了Snackbar的功能:

 void openSnackbar(String title){
            Snackbar
                    .make(findViewById(R.id.coordinatorLayout),
                            title,
                            Snackbar.LENGTH_LONG)
                    .setAction("",this)
                    .show();
    }

但在seAction()方法第二个参数内this给出错误you can't resolve method setAction(java.util.String,package.....)

如何解决这个问题?

2 个答案:

答案 0 :(得分:2)

  

但是在seAction()方法中第二个参数,因为这给你错误   无法解析方法setAction(java.util.String,package .....)

entero sum entero mult real sum string El valor es un string y es 36.000000hello. entero Error syntax errorFIN del Analisis. Entrada CORRECTA Numero lineas analizadas: 1 的第二个参数是实现setAction的类的实例。如果编译器抱怨它,那是因为你的类没有实现那个接口。

答案 1 :(得分:1)

检查official javadoc

  setAction (CharSequence text, View.OnClickListener listener)

  Parameters:
    text        Text to display
    listener    callback to be invoked when the action is clicked

您可以使用以下内容:

  Snackbar
       .make(findViewById(R.id.coordinatorLayout),
             title,
             Snackbar.LENGTH_LONG)
       .setAction("", new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    //Your code
                }
            })
       .show();

否则你可以使用:

  Snackbar
       .make(findViewById(R.id.coordinatorLayout),
             title,
             Snackbar.LENGTH_LONG)
       .setAction("", myOnClickListener)
       .show();

myOnClickListener = new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        //Your code
                    }
                };

如果您想使用

.setAction("",this)

您的班级必须实施View.OnClickListener界面。