我不知道为什么最后两个按钮不可点击,我多次使用背景(我为它们设置的)并且它适用于其他布局,我确信错误是 foucable 或 clickable 但我不知 Prop 体在哪里。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF"
android:fillViewport="true" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#FFFFFF"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="20dip"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:layout_marginTop="20dip"
android:layout_weight="1" >
<Button
android:id="@+id/b_orderMeal_selectRestaurant"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginRight="30dip"
android:text="@string/b_selectRestaurant" />
<ImageView
android:id="@+id/iv_orderMeal_isSelectRestaurant"
android:layout_width="25dp"
android:layout_height="25dp"
android:layout_alignParentRight="true"
android:contentDescription="@string/iv_isSelected"
android:src="@drawable/x" />
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="20dip"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:layout_marginTop="20dip"
android:layout_weight="1" >
<Button
android:id="@+id/b_orderMeal_selectMealItems"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginRight="30dip"
android:text="@string/b_select_MealItems" />
<ImageView
android:id="@+id/iv_orderMeal_isSelectMealItems"
android:layout_width="25dp"
android:layout_height="25dp"
android:layout_alignParentRight="true"
android:contentDescription="@string/iv_isSelected"
android:src="@drawable/x" />
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="20dip"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:layout_marginTop="20dip"
android:layout_weight="1" >
<Button
android:id="@+id/b_orderMeal_selectPayMethod"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginRight="30dip"
android:text="@string/b_selectPayMethod" />
<ImageView
android:id="@+id/iv_orderMeal_isSelectPayMethod"
android:layout_width="25dp"
android:layout_height="25dp"
android:layout_alignParentRight="true"
android:contentDescription="@string/iv_isSelected"
android:src="@drawable/x" />
</RelativeLayout>
<Button
android:id="@+id/b_orderMeal_checkBasket"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dip"
android:layout_marginRight="40dip"
android:layout_marginTop="20dip"
android:layout_weight="1"
android:text="@string/b_check_basket" />
<TextView
android:id="@+id/tv_orderMeal_errorMessage"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="20dip"
android:layout_marginRight="20dip"
android:layout_marginTop="30dip"
android:layout_weight="1"
android:text="@string/tv_orderMeal_errorMessage"
android:textColor="#FF0000"
android:textSize="20dip"
android:textStyle="bold"
android:typeface="sans" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@drawable/bg_selector"
android:orientation="horizontal" >
<Button
android:id="@+id/b_orderMeal_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="4dip"
android:layout_weight="1"
android:background="@drawable/button_bg"
android:text="@string/b_send"
android:focusable="true"
android:clickable="true"
android:textColor="#FFFFFF" />
<Button
android:id="@+id/b_orderMeal_cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="4dip"
android:layout_weight="1"
android:background="@drawable/button_bg"
android:text="@string/b_cancel"
android:clickable="true"
android:textColor="#FFFFFF" />
</LinearLayout>
</RelativeLayout>
</ScrollView>
我说的是最后两个按钮
java
b_send = (Button) findViewById(R.id.b_orderMeal_send);
b_send.setOnClickListener(this);
b_cancel = (Button) findViewById(R.id.b_orderMeal_cancel);
b_cancel.setOnClickListener(this);
点击
@Override
public void onClick(View v) {
case R.id.b_orderMeal_cancel:
Toast.makeText(this, "roma", Toast.LENGTH_LONG);
break;
}
注意
toast 没有出现
最佳答案
I don't know why the last two buttons is not clickable, I used the background (that i set to them ) many time and it works with another layouts, I am sure that the wrong is something like foucable or clickable but i don't know where exactly .
我认为您的 XML
设计在所有方面都没有问题,所以问题很可能出现在 Java
中。您很可能忘记为您的 Button(s)
注册 OnClickListener
。
Button btn = (Button) findViewById(R.id.b_orderMeal_send);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Toast.makeText(this, "Click event works.", Toast.LENGTH_SHORT).show();
}
}));
或者你可以使用OnClickListener
接口(interface)然后
public void onClick(View v) {
switch (v.getId()) {
case R.id.b_orderMeal_send:
Toast.makeText(this, "Click event works.", Toast.LENGTH_SHORT).show();
break;
}
}
关于android为什么这个按钮不可点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14840265/