如何在Android Studio的GridLayout中使按钮分布于整个网格,主要使用以下几个属性: app:layout_columnWeight=”1″ app:layout_rowWeight=”1″ app:layout_gravity=”fill” 部分XML代码如下: <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <androidx.gridlayout.widget.GridLayout android:layout_width="0dp" android:layout_height="0dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent"> <Button android:id="@+id/hello" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="buttonTapped" android:text="Hello" app:layout_column="0" app:layout_columnWeight="1" app:layout_rowWeight="1" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_gravity="fill" app:layout_row="0" /> ...以下省略 效果图如下:

findViewById返回gridLayout导致异常解决

以下语句导致了程序异常, GridLayout gridLayout = (GridLayout)findViewById(R.id.gridLayout); 参考链接,在XML中定义的gridLayout与在程序中定义的gridLayout不一致,导至了程序异常,改为一致的定义,问题解决。 程序中的定义为: import android.widget.GridLayout; 然而XML中的定义为: androidx.gridlayout.widget.GridLayout 解决方案: 程序改为以下: androidx.gridlayout.widget.GridLayout gridLayout = findViewById(R.id.gridLayout); 额外的问题,layout如果重叠,如何调整不同layout的显示顺序,在Android Studio中的Component Tree里调整先后顺序,就可以调整layout显示的优先级。 Reference App crashing in the part of Grid layout declaration

Ubuntu Android system setup(2)

1, setup the bin directory in you home directory and include in your path, $ mkdir ~/bin $ PATH=~/bin:$PATH 2, download the repo tool and make sure it is executable $ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo $ chmod a+x ~/bin/repo 3, make the working directory and download the branch, $ mkdir WORKING_DIRECTORY $ cd WORKING_DIRECTORY $ repo init -u https://android.googlesource.com/platform/manifest -b android-4.4.3_r1.1 $ repo sync this will take huge amount of time and occupy your space as large as 30G, I just left it there overnight running.