BaseAdapter Tutorial With Example In Android Studio
Now -> Activity-> BassAdd2 and add following code. Here we will create Gridview inside LinearLayout :-
1. XMl file:-
<?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"
tools:context=".BassAdd2"
android:orientation="vertical">
<GridView
android:id="@+id/simpleGridView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:numColumns="3"
/>
</LinearLayout>
2. JAVA file :-
package com.example.myapplication;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.GridView;
import android.widget.Toast;
import com.example.myapplication.R;
import java.time.Instant;
public class BassAdd2 extends AppCompatActivity {
int animals[] = {R.drawable.laughing, R.drawable.family, R.drawable.romantic,
R.drawable.relationship, R.drawable.sad, R.drawable.smile, R.drawable.smile, R.drawable.family, R.drawable.love,
R.drawable.laughing, R.drawable.family, R.drawable.romantic,
R.drawable.relationship, R.drawable.sad, R.drawable.smile, R.drawable.smile, R.drawable.family, R.drawable.love};
String name[] = {"Hello","Hi","Go","Come","Hello","Hi","Go","Come","Hello",
"Hello","Hi","Go","Come","Hello","Hi","Go","Come","Hello"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_bass_add2);
GridView simpleGrid = (GridView) findViewById(R.id.simpleGridView1);
CustomAdapter1 customAdapter = new CustomAdapter1(getApplicationContext(), name,animals);
simpleGrid.setAdapter(customAdapter);
simpleGrid.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
switch (i){
case 1:
Intent in1=new Intent(getApplicationContext(),List_ex.class);
startActivity(in1);
break;
case 2:
Intent in2=new Intent(getApplicationContext(),MainActivity.class);
startActivity(in2);
break;
case 3:
Intent in3=new Intent(getApplicationContext(),BaseAddExam.class);
startActivity(in3);
break;
case 4:
Intent in4=new Intent(getApplicationContext(),List_ex.class);
startActivity(in4);
break;
}
//show the selected image in toast according to position
}
});
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#DDBABA">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="center_horizontal"
android:background="@drawable/radius"
android:layout_marginTop="15dp"
android:layout_marginBottom="5dp"
android:elevation="5dp">
<ImageView
android:id="@+id/icon1"
android:layout_width="100dp"
android:layout_height="100dp"
android:scaleType="fitXY"
android:layout_margin="5dp"
android:src="@drawable/smile"
android:padding="10dp"
android:layout_gravity="center_horizontal" />
<TextView
android:id="@+id/icontext"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textColor="#742FF0"
android:textStyle="bold|italic"
android:text="hello"
android:gravity="center"
android:padding="5dp"
android:layout_gravity="center_horizontal"/>
</LinearLayout>
</LinearLayout>
4. Create a new class CustomAdapter1.java inside package and add the following code:-
package com.example.myapplication;
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 android.widget.TextView;
public class CustomAdapter1 extends BaseAdapter {
Context context;
String name[];
int animals[];
LayoutInflater inflter;
public CustomAdapter1(Context applicationContext, String[] name, int[] animals) {
this.context = context;
this.name = name;
this.animals = animals;
inflter = (LayoutInflater.from(applicationContext));
}
@Override
public int getCount() {
return name.length;
}
@Override
public Object getItem(int i) {
return null;
}
@Override
public long getItemId(int i) {
return 0;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
view = inflter.inflate(R.layout.gridview1, null);
TextView tv = (TextView) view.findViewById(R.id.icontext);
ImageView icon = (ImageView) view.findViewById(R.id.icon1);
tv.setText(name[i]);
icon.setImageResource(animals[i]);
return view;
}
}
Comments
Post a Comment