我需要GridLayout像这样对齐视图(浅蓝色图标和文本是GridLayout中的视图):
但我的GridLayout是这样排列的:
如果我设置
app:layout_columnWeight="1"
and app:layout_rowWeight="1"
,我的GridLayout如下对齐:
<android.support.v7.widget.GridLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="18dp"
app:columnCount="7">
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Trilha"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Mergulho"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Praia"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Festas"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Parque de Diversões"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Relaxar"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Esportes Radicais"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Acampamento"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Off Road"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Passeio de Barco"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Restaurantes"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Show / Festival"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Resort / SPA"/>
<com.motivapp.motivapp.customview.KeywordView
android:id="@+id/keyword14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
keyword:text="Locas Históricos"/>
</android.support.v7.widget.GridLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<com.motivapp.motivapp.customview.DefaultTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/keywordTextView"
android:textSize="18sp"
android:text="Keyword"
android:textColor="#839EC5"
android:layout_gravity="center_horizontal"/>
<ImageView
android:layout_width="130dp"
android:layout_height="130dp"
android:layout_gravity="center_horizontal"
android:src="@drawable/keyword_button"
android:id="@+id/keywordButton"/>
</LinearLayout>
这是一个自定义视图,但现在,它什么都不做,只显示自定义textview和imageview。。。我如何使GridLayout像第一幅图像一样对齐?
快解决我的问题了。。。我改变了一些事情,现在只有一个观点是不一致的。
我把
应用:layout_columnWeight=“1”
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|center_horizontal">
<com.motivapp.motivapp.customview.DefaultTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/keywordTextView"
android:textSize="16sp"
android:text="Keyword"
android:textColor="#839EC5"
android:gravity="center"/>
<ImageView
android:layout_width="120dp"
android:layout_height="120dp"
android:src="@drawable/keyword_button"
android:id="@+id/keywordButton"/>
</LinearLayout>
如何将所有这些视图居中?当textview有一个很大的宽度和换行符时,他会强制imageview向下,并且不居中对齐,如何防止这种情况?