[英]Clickable area of an imageView
我有一个带1个孩子的滚动视图。 具有许多子级的线性布局,每个子级都是一个“行”,其中包含5个图像视图。 我想发生的是,当您单击图像时,它将启动一个新活动。 但是,问题在于,似乎只触摸图像的上半部分实际上被注册为您实际按下的图像上的“点击”,而图像下半部分中的其他任何内容都被注册为该按钮的“点击”。图片在您实际按下的图片正下方。 我正在使用nexus 7 2013进行测试,每个缩略图为100 x 100,因此我考虑将其作为原因,但是有没有办法确保您按的图像实际上是已注册的图像?
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:weightSum="150" android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginBottom="dp"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-50dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p1"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p2"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p3"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p4"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p5"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p6"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p7"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p8"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p9"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p10"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p11"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p12"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p13"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p14"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p15"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p16"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p17"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p18"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p19"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p20"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p21"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p22"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p23"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p24"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p25"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p26"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p27"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p28"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p29"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p30"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p31"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p32"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p33"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p34"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p35"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p36"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p37"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p38"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p39"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p40"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p41"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p42"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p43"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p44"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p45"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p46"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p47"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p48"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p49"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p50"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p51"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p52"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p53"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p54"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p55"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p56"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p57"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p58"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p59"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p60"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p61"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p62"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p63"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p64"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p65"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p66"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p67"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p68"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p69"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p70"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight="10" android:paddingTop="-50dp" android:layout_marginTop="-135dp">
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p71"
android:layout_weight="20" android:layout_marginLeft="5dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p72"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p73"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="232dp"
android:id="@+id/p74"
android:layout_weight="20" android:layout_marginLeft="10dp">
</ImageView>
<ImageView
android:layout_width="232dp"
android:layout_height="fill_parent"
android:id="@+id/p75"
android:layout_weight="20" android:layout_marginLeft="10dp" android:layout_marginRight="5dp">
</ImageView>
</LinearLayout>
</LinearLayout>
</ScrollView>
您的问题是由于负填充和连续线性布局行上的边距所致。
强烈建议您切换到GridLayout
,它是专为您要实现的目的而设计的,因为您认为布局很难管理。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.