我正在摸不着头脑,真的想不到我做错了什么。我在主要活动布局中实现了一个按钮,如下所示:
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:text="@string/calculate"
android:textSize="13sp" />
在我的主要活动中,我将此按钮连接到按钮监听器,如下所示:
Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(buttonListener);
调用我的按钮监听器:
private OnClickListener buttonListener = new OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent (MainActivity.this, ResultsActivity.class);
MainActivity.this.startActivity(intent);
}
};
单击该按钮无法启动其他活动,我已在Android清单中正式声明...
当我点击按钮时,我可以在调试模式下看到以下条目进入LogCat:
04-27 19:06:31.402: D/GestureDetector(25925): [Surface Touch Event] mSweepDown False, mLRSDCnt : -1 mTouchCnt : 3 mFalseSizeCnt:0
对这个问题有什么看法吗?任何帮助将不胜感激。
答案 0 :(得分:0)
尝试声明
private class clicker implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent (MainActivity.this, ResultsActivity.class);
startActivity(intent);
}
}
然后
Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(new clicker());
而不是新的OnClickListener。它有用吗?
答案 1 :(得分:0)
您是否使用任何手势检测器将滑动转换为事件,然后这就是发生此错误的原因,尝试注释掉手势列表器代码然后运行它。
它会起到魅力。
答案 2 :(得分:0)
您的按钮是否是某些父视图或布局的子视图?父布局可能已经使用了click事件。尝试将按钮设置为
android:clickable="true"
答案 3 :(得分:0)
这是因为您可能尝试访问视图,其中布局实际上在某个其他视图或活动上实际膨胀,可能会由适配器为列表视图充气。检查您膨胀的布局是否正确,然后重试。