我有吼叫xml。我想使imageview可点击。但是,似乎我只能单击checkedTextView。有没有办法可以让checkedtextview和imageview独立点击?似乎checkedTextView消耗了整个空间,在checkedtextview后面有imageview(可能?)。有任何想法吗?对Android开发很新,这一点非常困惑。我试图给予重量,但它似乎没有任何帮助。
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="60dp"
android:orientation="vertical">
<CheckedTextView
android:id="@+id/checked_text_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="5dp"
android:checkMark="?android:attr/listChoiceIndicatorMultiple"
android:gravity="center_vertical"
android:text="@string/hello_world"
android:textColor="@color/white"
android:padding="20dp"
android:textSize="20sp"
android:textStyle="bold"/>
<ImageView
android:id="@+id/my_image_pencil"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:src="@drawable/image_pencil" />
</LinearLayout>
答案 0 :(得分:1)
使用这个......
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="60dp" >
<CheckedTextView
android:id="@+id/checked_text_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:checkMark="?android:attr/listChoiceIndicatorMultiple"
android:gravity="center|right"
android:padding="20dp"
android:text="Hello"
android:textColor="#fff"
android:textSize="20sp"
android:textStyle="bold" />
<ImageView
android:id="@+id/my_image_pencil"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="16dp"
android:src="@drawable/ic_launcher" />
</RelativeLayout>
如果要在行项目中单击ImageView事件,请设置
android:focusable="false
CheckedTextView 。
答案 1 :(得分:0)
试试这个,
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="60dp"
android:orientation="vertical">
<CheckedTextView
android:id="@+id/checked_text_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:checkMark="?android:attr/listChoiceIndicatorMultiple"
android:gravity="center_vertical"
android:text="@string/hello_world"
android:textColor="@color/white"
android:padding="20dp"
android:textSize="20sp"
android:textStyle="bold"/>
<ImageView
android:id="@+id/my_image_pencil"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onclick="onImageClick"
android:src="@drawable/image_pencil" />
</LinearLayout>
在活动中有这样的方法
public void onImageClick(View view)
{
// handler for imageclick
}
答案 2 :(得分:0)
当我们在列表视图中使用复选框,按钮,图像按钮等时。它需要listview的所有重点,因此当我们点击列表视图或列表视图的其他元素(如图像等)时,就没有任何关注这些小部件,因此没有可点击的动作对它们执行。
所以只需更改代码以获取复选框,如下所示..
<CheckedTextView
android:id="@+id/checked_text_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="5dp"
android:checkMark="?android:attr/listChoiceIndicatorMultiple"
android:gravity="center_vertical"
android:text="@string/hello_world"
android:padding="20dp"
android:textSize="20sp"
android:focusable="false"
android:textStyle="bold"/>
我刚在你的代码中添加了这一行..
的 android:focusable="false
强>