1.GridView
gridview_item
<?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:layout_height="match_parent"> <ImageView android:id="@+id/img1" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout>
main
<?xml version="1.0" encoding="utf-8"?> <LinearLayout 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" android:orientation="vertical" tools:context=".MainActivity"> <GridView android:id="@+id/gridviewid" android:layout_width="match_parent" android:layout_height="match_parent" android:numColumns="4" android:horizontalSpacing="10dp" android:verticalSpacing="10dp"/> </LinearLayout>
GridAdapter
package com.example.first; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import java.util.ArrayList; public class GridAdapter extends BaseAdapter { Context context; ImageView imageView; public GridAdapter(Context context) { this.context = context; } //返回的是gridview的数量 @Override public int getCount() { return 20; } @Override public Object getItem(int i) { return i; } @Override public long getItemId(int i) { return i; } //最重要的一个方法,给gridview加载数据 @Override public View getView(int i, View view, ViewGroup viewGroup) { if (view == null){ view = LayoutInflater.from(context).inflate(R.layout.gridview_item,viewGroup,false); } imageView = view.findViewById(R.id.img1); imageView.setImageResource(R.drawable.ic_android_black_24dp); return view; } }
mainactivity
package com.example.first; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import android.content.Intent; import android.os.Bundle; import android.os.PersistableBundle; import android.util.Log; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.GridLayout; import android.widget.GridView; import android.widget.ListView; import android.widget.Toast; import java.util.ArrayList; public class MainActivity extends AppCompatActivity { private GridView gridView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); gridView = findViewById(R.id.gridviewid); gridView.setAdapter(new GridAdapter(this)); gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { Toast.makeText(getApplicationContext(),"点击了:"+i,Toast.LENGTH_SHORT).show(); } }); } }



浙公网安备 33010602011771号