android-studio - android gridlayout动态多行多列的问题
PHP中文网
PHP中文网 2017-04-18 09:04:11
0
3
961

代码和效果图如上,请问

1,如何将按钮紧密连接在一起,像扫雷游戏那样?我设置了margin,都不行。

2,如何在点击其中一个按钮后,获取它在gridlayout的位置呢?代码如下,没有效果

/**

  • 点击事件
    */

private View.OnClickListener clickListener = new View.OnClickListener() {

@Override
public void onClick(View v) {
Button btn = (Button)v;
GridLayout.LayoutParams params = (GridLayout.LayoutParams)btn.getLayoutParams();
GridLayout.Spec spec = params.rowSpec;

Log.d("AAA",params.rowSpec + "aa");

}

PHP中文网
PHP中文网

认证0级讲师

membalas semua(3)
PHPzhong
  1. Terdapat jidar antara butang, yang disebabkan oleh gaya lalai Butang sistem. Imej latar belakang gaya lalai Button ialah insetDrawable dengan ruang putih di sekelilingnya. Untuk menyelesaikan masalah ruang putih, anda boleh menetapkan latar belakang untuk Butang sendiri, supaya jurang dapat dihapuskan.

  2. GridLayout berbeza daripada GridView kerana ia hanya bertanggungjawab untuk peletakan kawalan kanak-kanak dan tidak bertanggungjawab untuk merekodkan maklumat lokasi kawalan kanak-kanak dan pengedaran peristiwa klik. Ini memerlukan anda memantau setiap sub-kawalan secara individu.
    Untuk mendapatkan kedudukan sub-kawalan dalam GridLayout, ia bergantung pada sama ada kod anda dijana secara dinamik dan tidak dikonfigurasikan melalui fail xml Anda boleh mengikat maklumat kedudukannya sendiri ke sub-kawalan melalui View.setTag () apabila menjana sub-kawalan Pada kawalan, dapatkan maklumat kedudukan melalui View.getTag() dalam acara onClick().

Semoga ini membantu.

伊谢尔伦

Hanya tetapkan lebar paparan item kepada match_parnet

PHPzhong

Adakah saya perlu menggunakan GridLayout? Anda boleh menggunakan GridView atau RecycleView sebaliknya

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan