我正在创建一个Android应用程序,其中我有一个xml看起来像的屏幕:
<LinearLayout
android:id="@+id/btns"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="2"
android:orientation="horizontal" >
<Button
android:id="@+id/viewCalendar"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/bg_name_2"
android:gravity="center"
android:layout_margin="0.5dp"
android:text="View Calendar"
android:textColor="@android:color/primary_text_dark" />
<Button
android:id="@+id/createNewMeeting"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/bg_name_2"
android:gravity="center"
android:layout_margin="0.5dp"
android:text="Add New Meeting"
android:textColor="@android:color/primary_text_dark" />
</LinearLayout>
现在你可以看到我有两个按钮View Calendar
和Add New Meeting
。问题是单击时View Calendar
按钮响应,双击时Add New Meeting
按钮响应(请注意,只有当我在应用程序启动后第一次进入此屏幕并且在应用程序关闭之前正常工作时才会发生这种情况)。当应用程序关闭并再次启动时,再次在此屏幕上再次启动此按钮,此按钮在两次点击后触发......依此类推......
这是Java代码,仅仅在onClickListener
Button
并不新鲜
addNew = (Button) findViewById(R.id.createNewMeeting);
addNew.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
// code for add new meeting
Intent intent = new Intent(getActivity(),
ActivityReminderNew.class);
startActivity(intent);
}
});
viewCalendar = (Button) findViewById(R.id.viewCalendar);
viewCalendar.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
// code for calendar view
}
});
R&amp; D:我一直在寻找这个问题,但大多数情况下,我得到的答案就像在xml中设置android:focusableInTouchMode="true"
或android:focusable="true"
,但它没有解决我的问题。
希望我详细解释了我的问题,你们可以理解我的问题。任何类型的帮助将不胜感激。