我知道这是一个之前被问过的问题,但我认为我正在进行正确的编码,但是,我没有得到正确的结果。这是我的xml代码:
<LinearLayout
android:id="@+id/directions_layout"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:clickable="true">
<ImageView android:src="@drawable/icon_directions"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="5dp"/>
<TextView android:text="Directions"
android:textColor="@color/gray"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="10dp"/>
</LinearLayout>
我不知道这是否有所不同,但作为所示者的父级的LinearLayout无法点击。
这是我在代码中设置OnClickListener的地方:
listener_layout = new OnClickListener(){
@Override
public void onClick(View v) {
Toast.makeText(v.getContext(), "hi", Toast.LENGTH_SHORT);
}
};
call_layout = (LinearLayout) findViewById(R.id.call_layout);
call_layout.setOnClickListener(listener_layout);
但它永远不会被解雇......有什么建议吗?
答案 0 :(得分:3)
Toast.makeText(v.getContext(), "hi", Toast.LENGTH_SHORT);
你没有在你的吐司上打电话给show()
,看起来你的听众似乎没有开火。
以上一行应为:
Toast.makeText(v.getContext(), "hi", Toast.LENGTH_SHORT).show();