Android 按钮未调用OnClickListener
我刚刚创建了一个Android 按钮未调用OnClickListener,android,button,Android,Button,我刚刚创建了一个滚动视图,它内部有一个线性布局。这个LinearLayout在顶部有一个按钮,我无能为力。按钮的onClickListener从未调用 我想检测用户何时按下线性布局以及何时按下按钮 这是我的密码: LinearLayout layout = new LinearLayout(this); layout.setOrientation(LinearLayout.VERTICAL); scrollView.addView(layout); layout.
滚动视图
,它内部有一个线性布局
。这个LinearLayout
在顶部有一个按钮,我无能为力。按钮的onClickListener从未调用
我想检测用户何时按下线性布局
以及何时按下按钮
这是我的密码:
LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.VERTICAL);
scrollView.addView(layout);
layout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
layoutClick(v);
}
});
LinearLayout.LayoutParams headerParam = new LinearLayout.LayoutParams(
LinearLayout.LayoutParams.MATCH_PARENT,getDpFromPixel(50));
//bottone per l'header
Button headerButton = new Button(this);
headerButton.setId(findId());
headerButton.setLayoutParams(headerParam);
//headerButton.setBackground(getResources().getColor(R.color.button_backgroud));
//headerButton.setBackground(getResources().getColor(R.color.button_backgroud));
Drawable d = getResources().getDrawable(R.color.button_backgroud);
headerButton.setBackground(d);
headerButton.setText(title);
headerButton.setTextColor(getResources().getColor(R.color.white));
headerButton.setGravity(Gravity.CENTER_VERTICAL);
headerButton.setPadding(70, 0, 0, 0);
headerButton.setTextAlignment(View.TEXT_ALIGNMENT_TEXT_START);
headerButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
buttonPressed(v);
System.out.println("button pressed!!");
}
});
layout.addView(headerButton);
“layoutClick”功能正在工作,headerButton从未调用“buttonPressed”功能或打印到控制台 尝试使按钮可聚焦
headerButton.setFocusable(true);
headerButton.setClickable(true);
没有必要,XML是空的(只有父LinearLayout),所有内容都是由代码创建的。好的,您在哪里添加了
标题按钮
?是否尝试使用.setClickable()代码>方法?@Elltz我只是在粘贴代码后的一行将其添加到布局中,我编辑了这个问题。请参阅下面的帖子。您可能理解为什么不工作按钮不请求焦点,并且它只触发onclick事件,所以为什么真的要添加或需要它。我尝试了,没有任何更改。为什么我需要指定按钮的可点击属性?默认值为false?