我正在尝试在小吃店中设置操作。我有以下代码:
Snackbar.make(cb,lvMain.getChildCount()+" hotspots selected.",Snackbar.LENGTH_INDEFINITE).setAction("COPY TO",mOnClickListener).setActionTextColor(Color.RED).show();
如何为操作声明侦听器“mOnClickListener”?
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();
在like中声明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
}
};
有关完整示例,请参见此处。
我看到缺少 Kotlin 这样做的方式,所以我想加我的 2 美分:
Snackbar.make(view, "", Snackbar.LENGTH_INDEFINITE).apply {
setAction(R.string.dismiss) { this.dismiss() }
show()
}
好消息是apply
使不需要的小吃店消失的额外变量
也返回任何它的apply
通行证,所以你可以apply{...}.show()