Hai any one please tell me is there any possibility to create a DataGrid in android ,if yes mean please help me with some code snippets,or give some related web urls.
android.widget.GridView. A view that shows items in two-dimensional scrolling grid. The items in the grid come from the ListAdapter associated with this view.
Open Google Meet and start the session. Next to the person icon on the top-right corner, the Grid View icon will appear. Click on the icon to make everyone in the meeting appear on the screen in a grid view. Meet will resize everyone's box so that they all fit in one screen.
A layout that places its children in a rectangular grid. The grid is composed of a set of infinitely thin lines that separate the viewing area into cells. Throughout the API, grid lines are referenced by grid indices. A grid with N columns has N + 1 grid indices that run from 0 through N inclusive.
Book.java
package com.dgrid;
public class Book {
String title;
String author;
public Book(String title, String author) {
this.title = title;
this.author = author;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
}
main.xml
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
>
<ListView
android:id="@+id/bookListView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:divider="#ffffff"
/>
</AbsoluteLayout>
row.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/widget0"
android:orientation="horizontal"
android:layout_toRightOf="@android:id/icon"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ffffff"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<com.dgrid.ListItemView
android:id="@+id/title"
android:layout_height="wrap_content"
android:layout_width="150px"
android:text="Title"
android:textSize="10sp"
android:textStyle="bold"
android:textColor="#ff000000"
/>
ListItemView.java
package com.dgrid;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.widget.TextView;
public class ListItemView extends TextView {
private boolean isHeader = false;
private Paint linePaint;
public ListItemView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init();
}
public ListItemView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public ListItemView(Context context) {
super(context);
init();
}
public void init(){
linePaint = new Paint(Paint.ANTI_ALIAS_FLAG);
linePaint.setColor(Color.parseColor("#000000"));
}
public boolean isHeader() {
return isHeader;
}
public void setHeader(boolean isHeader) {
this.isHeader = isHeader;
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
if(isHeader){
canvas.drawColor(Color.parseColor("#AAFFFF99"));
}
canvas.drawLine(0, 0, getMeasuredWidth(), 0,linePaint);
canvas.drawLine(0, getMeasuredHeight(), getMeasuredWidth(), getMeasuredHeight(),linePaint);
canvas.drawLine(0,0, 0, getMeasuredHeight(),linePaint);
}
}
DatagridActivity.java
package com.dgrid;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class DatagridActivity extends Activity {
Context mContext;
Book[] books = {new Book("Title","Author"),new Book("Clean Code","Uncle Bob"),new Book("Face 2.0","Allen Cooper")};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mContext = this;
setContentView(R.layout.main);
ListView bookListView =(ListView)findViewById(R.id.bookListView);
LitemItemAdapter mcqListAdapter = new LitemItemAdapter(this,R.layout.row,books);
bookListView.setAdapter(mcqListAdapter);
}
class LitemItemAdapter extends ArrayAdapter<Book>{
public LitemItemAdapter(Context context, int textViewResourceId,
Book[] objects) {
super(context, textViewResourceId, objects);
}
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.row, null);
}
Book item = books[position];
if (item != null) {
ListItemView titleView = (ListItemView) v.findViewById(R.id.title);
ListItemView authorView = (ListItemView) v.findViewById(R.id.author);
if(position == 0){
titleView.setHeader(true);
authorView.setHeader(true);
}
if(titleView != null){
titleView.setText(item.getTitle());
}
if(authorView != null){
authorView.setText(item.getAuthor());
}
}
return v;
}
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With