java - 从 android 的 tableLayout 加载图像

标签 java android

我有 5 行 imageView,但这段代码只加载 4 行?为什么?

Java代码

tl = (TableLayout) findViewById(R.id.tableLayout);
for (int i = 0; i < tl.getChildCount(); i++) {
    View v = tl.getChildAt(i);
    if (v instanceof TableRow) {

        for (int j = 0; j < ((TableRow) v).getChildCount(); j++) {
            View innerView = ((TableRow) v).getChildAt(j);
            if (innerView instanceof ImageView) {
                imageList.add((ImageView) innerView);
                idList.add(innerView.getId());
            }
        }
    }
}

布局

<TableLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentTop="true"
        android:layout_alignParentStart="false"
        android:layout_alignParentBottom="true"
        android:layout_marginBottom="275dp"
        android:id="@+id/tableLayout">

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView3"
                android:layout_column="1"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView2"
                android:layout_column="2"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView"
                android:layout_column="3"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView25"
                android:layout_column="5"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView5"
                android:layout_column="6"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView13"
                android:layout_column="1"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView12"
                android:layout_column="2"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView11"
                android:layout_column="3"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView10"
                android:layout_column="5"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView14"
                android:layout_column="6"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView9"
                android:layout_column="1"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView8"
                android:layout_column="2"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView6"
                android:layout_column="3"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView7"
                android:layout_column="5"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView4"
                android:layout_column="6"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView18"
                android:layout_column="1"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView17"
                android:layout_column="2"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView16"
                android:layout_column="3"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView15"
                android:layout_column="5"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView19"
                android:layout_column="6"
                android:nestedScrollingEnabled="false"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:nestedScrollingEnabled="false">

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView23"
                android:layout_column="1"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView22"
                android:layout_column="2"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView21"
                android:layout_column="3"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView20"
                android:layout_column="5"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/imageView24"
                android:layout_column="6"
                android:src="@drawable/blog_dp_5058985_7848593_tr_woda" />

        </TableRow>

</TableLayout>

最佳答案

I can comparing two imageView? eg image.get(1).getdrawable()==image.get(2).getdrawable()?

不是,这样只是比较它们是否是同一个对象。在这种情况下,这将是错误的。但是,如果您想比较 ImageView 的图像,那么您应该获取它们的位图,然后使用 sameAs方法。

        //comapre objects returns false
        Log.i("EQ", (imageList.get(0).getDrawable().equals(imageList.get(1).getDrawable())) + "");
        Log.i("EQ", imageList.get(0).getDrawable().toString()); //android.graphics.drawable.BitmapDrawable@89c323c
        Log.i("EQ", imageList.get(1).getDrawable().toString()); //android.graphics.drawable.BitmapDrawable@837dbc5

        BitmapDrawable bitmapDrawable0 = ((BitmapDrawable) imageList.get(0).getDrawable());
        Bitmap bitmap0 = bitmapDrawable0 .getBitmap();

        BitmapDrawable bitmapDrawable1 = ((BitmapDrawable) imageList.get(1).getDrawable());
        Bitmap bitmap1 = bitmapDrawable1 .getBitmap();

        //comapre the image returns true
        Log.i("EQ2", Boolean.toString(bitmap0.sameAs(bitmap1)));

在我调用 toString() 的地方,它表明它们不是同一个对象,尽管它们持有与 SameAs 指示相同的图像。

注意: 代替 equals() 方法,“==”运算符会做同样的事情,没有区别

关于java - 从 android 的 tableLayout 加载图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33945439/

相关文章:

java - Java应用程序如何实现管理员权限?

java - 使用 double 作为比较对 JSONArray 进行排序违反了约定?

未找到 SSL 证书的 Java HttpClient 错误,在代码中使用证书作为字符串?

android - 在android中实现加载屏幕的最佳方式

android - 向应用程序的 Google Cloud Endpoints 2 API 提供 API key 的正确方法是什么?

android - 以编程方式滚动 ListView 时隐藏滚动条?

android - Gradle同步失败:脱机模式下没有com.android.tools.build:gradle:6.2.2的缓存版本

java - 我们什么时候应该使用远程过程调用?

java - 使用 MARF 训练说话人识别时未找到说话人

java - 想要在播放音频剪辑后移动下一个 Activity (请参见图片)