我想将onClickListener添加到底部工作表布局对话框中的按钮。但它没有用。单击按钮时没有任何反应。
CODE
button_right = layoutBottomSheet.findViewById(R.id.button_cod);
button_wrong = layoutBottomSheet.findViewById(R.id.button_paytm);
layoutBottomSheet = findViewById(R.id.bottom_sheet_layout);
sheetBehavior = BottomSheetBehavior.from(layoutBottomSheet);
confirmButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (sheetBehavior.getState() != BottomSheetBehavior.STATE_EXPANDED) {
sheetBehavior.setState(BottomSheetBehavior.STATE_EXPANDED);
} else {
sheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
}
}
});
button_right.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(CartActivity.this, "Right", Toast.LENGTH_SHORT).show();
}
});
button_wrong.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(CartActivity.this, "Wrong", Toast.LENGTH_SHORT).show();
}
});
答案 0 :(得分:0)
您需要button
绑定id
。
像
Button confirmButton = (Button) layoutBottomSheet.findViewById(R.id.confirmButton);
Button button_right = (Button) layoutBottomSheet.findViewById(R.id.button);
同样然后你可以点击。
答案 1 :(得分:0)
如果您遵循beehive tutorial,则只需为该布局充气,然后在该视图中调用按钮即可。
View view = getLayoutInflater().inflate(R.layout.fragment_filters, null);
BottomSheetDialog dialog = new BottomSheetDialog(getActivity());
dialog.setContentView(view);
dialog.show();
final Button button = view.findViewById(R.id.helloworld);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getActivity(), "ok", Toast.LENGTH_LONG).show();
}
});
通知
最终按钮button = view.findViewById(R.id.helloworld);
视图等于
View view = getLayoutInflater()。inflate(R.layout.fragment_filters, null);
即我用来显示在底页中的片段。希望这会有所帮助