установить видимость изображения скрытыми и видимыми программно - PullRequest
0 голосов
/ 24 февраля 2019

У меня есть изображение в моем макете.Я хочу, чтобы в моей базе данных было какое-либо изображение, сделать мой просмотр изображений видимым, иначе сделать мой просмотр изображений пропавшим.Мое изображение-вид имеет особый размер в макете, когда изображения нет, пространство изображения-изображения существует, и оно пустое, хотя мое изображение-изображение исчезло.

вот мои макеты:

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_above="@+id/addbtn"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/title"
    android:layout_centerHorizontal="true">

    <ScrollView
        android:id="@+id/scrollView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="15dp"
        android:layout_marginTop="3dp">

        <LinearLayout

            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:orientation="vertical">

                <ImageView
                    android:id="@+id/main_matn_img"
                    android:layout_width="200dp"
                    android:layout_height="150dp"
                    android:layout_gravity="center_horizontal"
                    android:layout_marginLeft="5dp"
                    android:visibility="gone"
                    android:layout_marginRight="5dp"
                    android:layout_marginTop="10dp" />

            <TextView
                android:id="@+id/main_matn_matn"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="right"
                android:layout_marginBottom="15dp"
                android:layout_marginLeft="30dp"
                android:layout_marginRight="30dp"
                android:layout_marginTop="30dp"
                android:gravity="right"
                android:text="TextView"
                android:textColor="#000"
                android:textDirection="rtl"
                android:textSize="20sp"

                />


        </LinearLayout>
    </ScrollView>
</RelativeLayout>

>

, и вот как проверить на видимое и видимое.

  String p = db.getpic("tbl_book", sea, Name, page3 + "");

    if (p != null) {
        int ImageResource = getResources().getIdentifier(p, "drawable", getPackageName());
        img.setImageResource(ImageResource);
        img.setVisibility(View.VISIBLE);

    } else {
        img.setVisibility(View.GONE);
    }

таким образом, если у меня нет изображения, оно показывает мое изображение.размер, хотя ушел.

Ответы [ 2 ]

0 голосов
/ 24 февраля 2019

Изменить эту строку

<ImageView
                    android:id="@+id/main_matn_img"

                    android:visibility="visible"
</ImageView>


     String p = db.getpic("tbl_book", sea, Name, page3 + "");
        if (p != null && p.length()>0) {
 img.setVisibility(View.VISIBLE);
            int ImageResource = getResources().getIdentifier(p, "drawable", getPackageName());
            img.setImageResource(ImageResource);


        } else {
            img.setVisibility(View.GONE);
        }
0 голосов
/ 24 февраля 2019

Первый способ:

Вы должны использовать wrap_content в вашем изображении:

<ImageView
                android:id="@+id/main_matn_img"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal"
                android:layout_marginLeft="5dp"
                android:visibility="gone"
                android:layout_marginRight="5dp"
                android:layout_marginTop="10dp" />

Второй способ:

вы можете обращаться с этим программно следующим образом:

 String p = db.getpic("tbl_book", sea, Name, page3 + "");

    if (p != null) {
        int ImageResource = getResources().getIdentifier(p, "drawable", getPackageName());
        img.setImageResource(ImageResource);
        img.setVisibility(View.VISIBLE);
img.getLayoutParams().height = 100;
            img.getLayoutParams().width=100;

    } else {
  img.getLayoutParams().height = 0;
            img.getLayoutParams().width=0;
        img.setVisibility(View.GONE);
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...