imageView的可点击区域

时间:2014-01-02 03:36:31

标签: java android imageview scrollview

我有一个带有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>

1 个答案:

答案 0 :(得分:1)

您的问题是由连续线性布局行上的负填充和边距引起的。

强烈建议您切换到专为您要达到的目的而设计的GridLayout,因为我认为您的布局有点难以管理。