我正在尝试使gridview中的元素居中,但是这样做存在一些问题。
我的列布局如下:
我希望它看起来像这样:
列布局代码:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="match_parent"
android:padding="10dp"
android:gravity="center"
android:layout_height="110dp">
<ImageView
android:id="@+id/iv_logo"
android:layout_width="60dp"
android:layout_height="60dp"
android:gravity="center" />
<TextView
android:id="@+id/app_name"
android:layout_width="100dp"
android:layout_marginTop="55dp"
android:layout_height="wrap_content"
android:textColor="#ffffff"
android:gravity="center"
android:text="TextView" />
</RelativeLayout>
我的表格视图:
<GridView
android:id="@+id/gvApps"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
android:columnWidth="90dp"
android:gravity="center"
android:horizontalSpacing="10dp"
android:numColumns="3"
android:stretchMode="spacingWidthUniform"
android:verticalSpacing="10dp"
tools:listitem="@layout/app_row"
app:layout_constraintRight_toRightOf="parent"
tools:layout_editor_absoluteX="1dp"
tools:layout_editor_absoluteY="1dp" />
我需要更改我的代码吗?
答案 0 :(得分:0)
尝试使用vertical
和方向<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:padding="10dp"
android:gravity="center"
android:layout_height="110dp">
<ImageView
android:id="@+id/iv_logo"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_gravity="center" />
<TextView
android:id="@+id/app_name"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:textColor="#ffffff"
android:gravity="center"
android:text="TextView" />
</LinearLayout>
进行以下操作:
RelativeLayout
如果您想使用<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:padding="10dp"
android:gravity="center_vertical"
android:layout_height="110dp">
<ImageView
android:id="@+id/iv_logo"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_centerHorizontal="true" />
<TextView
android:layout_below="@+id/iv_logo"
android:id="@+id/app_name"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:textColor="#ffffff"
android:layout_centerHorizontal="true"
android:text="TextView" />
</RelativeLayout>
,则应该像这样:
ConstraintLayout
您还可以使用<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:padding="10dp"
android:layout_height="110dp">
<ImageView
android:id="@+id/iv_logo"
android:layout_width="60dp"
android:layout_height="60dp"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
<TextView
android:layout_below="@+id/iv_logo"
android:id="@+id/app_name"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:textColor="#ffffff"
app:layout_constraintTop_toBottomOf="@+id/iv_logo"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
android:text="TextView" />
</androidx.constraintlayout.widget.ConstraintLayout>
来实现它,如下所示:
new WebSocket('myDomain.com')