#java #android-studio
Вопрос:
Я в замешательстве, правильный ли мой код или нет, на данный момент, когда я запускаю свое приложение под Android версии 10, оно работает хорошо, это тот результат, который я хочу, и он отлично работает, когда я запускаю
но проблема в том, что я не думаю, что если я запущу это приложение на другой версии Android, оно будет работать, или я думаю, что дизайн textviews
и просмотр изображений будут разбросаны, так как, когда я попытался просмотреть дизайн XML, он выглядит так
Я поместил его в Gridview. Это очень полезно для меня как новичка, android
если кто-то может мне помочь.
Main.xml
lt;?xml version="1.0" encoding="utf-8"?gt; lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="horizontal" android:layout_width="match_parent" android:background="@color/background" android:layout_height="match_parent"gt; lt;ImageView android:layout_width="110dp" android:layout_height="100dp" app:srcCompat="@mipmap/ic_launcher" android:id="@ id/imgFood" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:background="@drawable/round_outline" /gt; lt;ImageView android:layout_width="110dp" android:layout_height="100dp" app:srcCompat="@mipmap/ic_launcher" android:id="@ id/imgId" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:layout_alignLeft="@id/imgFood" android:layout_marginLeft="100dp" android:layout_alignParentTop="true" android:layout_alignParentStart="true" android:background="@drawable/round_outline" /gt; lt;TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@ id/txtCcText" android:text="Cash Card number:" android:textSize="13sp" android:hint="Cash Card no." android:textColor="@color/primary" android:layout_toRightOf="@ id/imgId" android:layout_alignParentRight="true" android:layout_marginRight="17dp" android:layout_marginLeft="-11dp" android:layout_marginTop="10dp" android:textStyle="bold|italic"/gt; lt;TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@ id/txtName" android:text="Cash Card number" android:textSize="10sp" android:textColor="@color/black" android:layout_toRightOf="@ id/imgId" android:textAlignment="center" android:layout_alignParentRight="true" android:layout_marginRight="17dp" android:layout_marginLeft="5dp" android:layout_marginTop="30dp" android:textStyle="bold" /gt; lt;TextView android:id="@ id/txtHHno" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@ id/txtName" android:layout_marginLeft="-11dp" android:layout_alignParentRight="true" android:layout_marginEnd="50dp" android:text="Household number:" android:textColor="@color/primary" android:textSize="13sp" android:textStyle="bold|italic"/gt; lt;TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@ id/txtPrice" android:text="HHNumber" android:textSize="10sp" android:layout_below="@ id/txtHHno" android:textColor="@color/black" android:layout_toRightOf="@ id/imgId" android:textAlignment="center" android:layout_alignParentRight="true" android:layout_marginRight="17dp" android:layout_marginLeft="5dp" android:textStyle="bold" /gt; lt;TextView android:id="@ id/txtSeries" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@ id/txtPrice" android:layout_marginLeft="-11dp" android:layout_alignParentRight="true" android:layout_marginEnd="75dp" android:text="Series number:" android:textColor="@color/primary" android:textSize="13sp" android:textStyle="bold|italic"/gt; lt;TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@ id/txtSeriesNumber" android:text="SeriesNumber" android:textSize="10sp" android:layout_below="@ id/txtSeries" android:textColor="@color/black" android:layout_toRightOf="@ id/imgId" android:textAlignment="center" android:layout_alignParentRight="true" android:layout_marginRight="17dp" android:layout_marginLeft="5dp" android:textStyle="bold"/gt; lt;/RelativeLayoutgt;
GridView.xml
lt;?xml version="1.0" encoding="utf-8"?gt; lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@ id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/white" gt; lt;com.google.android.material.appbar.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" gt; lt;androidx.appcompat.widget.Toolbar android:id="@ id/mainToolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="@color/primary" android:backgroundTint="@color/background" app:liftOnScroll="true"/gt; lt;/com.google.android.material.appbar.AppBarLayoutgt; lt;GridView android:layout_marginTop="50dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@ id/gridView" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:columnWidth="300dp" android:gravity="center" android:numColumns="auto_fit" /gt; lt;/RelativeLayoutgt;
Комментарии:
1. Я предлагаю вам использовать RecyclerView с ConstraintLayout или lazyColumn с jetpack compose.
2. @Vidyesh Churi Спасибо за ваш ответ, но есть ли способ просто использовать GridView? так как я уже использовал GridView
3. Возможно, два просмотра изображений с одним линейным отображением выполнят эту работу с распределением веса 1:1:2 соответственно.
4. @Vidyesh Churi Спасибо за ответ , но я понятия не имею, как это реализовать, пожалуйста
Ответ №1:
lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"gt; lt;ImageView android:id="@ id/imgFood" android:layout_width="110dp" android:layout_height="100dp" android:layout_margin="8dp" android:scaleType="centerCrop" app:srcCompat="@mipmap/ic_launcher" /gt; lt;ImageView android:id="@ id/imgId" android:layout_width="110dp" android:layout_height="100dp" android:layout_margin="8dp" android:scaleType="centerCrop" app:srcCompat="@mipmap/ic_launcher" /gt; lt;LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:gravity="center" android:orientation="vertical"gt; lt;TextView android:id="@ id/txtCcText" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="Cash Card no." android:text="Cash Card number:" android:textColor="@color/colorPrimary" android:textSize="13sp" android:textStyle="bold|italic" /gt; lt;TextView android:id="@ id/txtName" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:text="1234-5678-9000-0000" android:textAlignment="center" android:textColor="@color/black" android:textSize="10sp" android:textStyle="bold" /gt; lt;TextView android:id="@ id/txtHHno" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Household number:" android:textColor="@color/colorPrimary" android:textSize="13sp" android:textStyle="bold|italic" /gt; lt;TextView android:id="@ id/txtPrice" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:text="123-4567" android:textAlignment="center" android:textColor="@color/black" android:textSize="10sp" android:textStyle="bold" /gt; lt;TextView android:id="@ id/txtSeries" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Series number:" android:textColor="@color/colorPrimary" android:textSize="13sp" android:textStyle="bold|italic" /gt; lt;TextView android:id="@ id/txtSeriesNumber" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:text="1234567890" android:textAlignment="center" android:textColor="@color/black" android:textSize="10sp" android:textStyle="bold" /gt; lt;/LinearLayoutgt;
Комментарии:
1. Нет проблем — Карлджейд