如何设置Onclicklistener for snackbar android中的操作?

时间:2016-06-12 04:52:55

标签: android listener snackbar

我正在尝试在快餐栏中设置操作。我有以下代码:

Snackbar.make(cb,lvMain.getChildCount()+" hotspots selected.",Snackbar.LENGTH_INDEFINITE).setAction("COPY TO",mOnClickListener).setActionTextColor(Color.RED).show();

如何声明监听器" mOnClickListener"为了行动?

3 个答案:

答案 0 :(得分:5)

Snackbar snackbar = Snackbar
        .make(cb,lvMain.getChildCount()+" hotspots selected.",Snackbar.LENGTH_INDEFINITE)
        .setAction("COPY TO", new View.OnClickListener() {
            @Override
            public void onClick(View view) {

            }
        });

snackbar.show();

答案 1 :(得分:0)

View.OnClickListener mOnClickListener;中将Activity声明为类变量,

public class MainActivity extends AppCompatActivity {
    View.OnClickListener mOnClickListener;
   // extra codes
}

然后你可以这样做,

   mOnClickListener = new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //Handle onclick here
        }
    };

有关完整示例,请参阅here

答案 2 :(得分:0)

我看到缺少Kotlin方式,所以我想加2美分:

Snackbar.make(view, "", Snackbar.LENGTH_INDEFINITE).apply {
    setAction(R.string.dismiss) { this.dismiss() }
    show()
}

令人高兴的是apply设置了多余的变量来关闭不需要的小吃吧

apply还会返回通过的所有内容,因此您可以apply{...}.show()

相关问题