Android Llene una lista con una matriz

Aquí, vamos a ir a aprender a hacer una lista y llenar la lista con datos de la matriz .

La lista es una cosa muy común el uso de Android ya que se utiliza para mostrar datos múltiples de tipo similar. Los datos se almacenan en una matriz de un class. Este class tendrá objetos que tienen las propiedades para mantener ciertos valores dentro de ellos. Estos valores serán un solo elemento de la lista. Así que a continuación es el código class el modelo o el elemento de la lista.

archivo Java:

package includehelp.articles;
public class Contacts {
private String name;
private String mobile;
private String phone;
public Contacts( String name,String mobile,String phone)
{
this.name=name;
this.mobile=mobile;
this.phone=phone;
}
public String getMobile() {
return mobile;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
}

El for Por encima se utiliza para obtener y valores establecidos. Hemos utilizado estas funciones en el adaptador personalizado. El adaptador personalizado es un class java que toma la matriz de datos. Este class luego itera a través de los artículos y hace una pequeña vista única class este artículo y lo añade a la gran vista de lista.

package includehelp.articles;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import java.util.List;
public class CustomAdapter extends ArrayAdapter<Contacts> {
Context c;
public CustomAdapter(Context context, int resource, List<Contacts> objects) {
super(context, resource, objects);
c=context;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater li = (LayoutInflater) c.getSystemService(c.LAYOUT_INFLATER_SERVICE);
convertView = li.inflate(R.layout.contact_layout, parent, false);
Contacts cl=getItem(position);
TextView name=(TextView)convertView.findViewById(R.id.name);
TextView mobile=(TextView)convertView.findViewById(R.id.mobile);
TextView phone=(TextView)convertView.findViewById(R.id.phone);
name.setText(cl.getName());
mobile.setText(cl.getMobile());
phone.setText(cl.getPhone());
return convertView;
}
}

Ahora, los restos de lógica de negocio es for main_activity main.

Actividad

package includehelp.articles;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ListView;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
ListView L;
List<Contacts> list=new ArrayList<Contacts>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
L=(ListView)findViewById(R.id.listView);
Contacts c1 = new Contacts("ABC","123","456");
Contacts c2 = new Contacts("XYZ","798","026");
Contacts c3 = new Contacts("PQR","498","561");
list.add(c1);
list.add(c2);
list.add(c3);
CustomAdapter adp=new CustomAdapter(this,R.layout.activity_main,list);
L.setAdapter(adp);
}
}

Este Main_Activity llevará a cabo la list_view y el adaptador juntos.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout >:android="http://schemas.android.com/apk/res/android"
>:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="includehelp.articles.MainActivity">
<ListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/listView"
android:layout_centerHorizontal="true" />
</RelativeLayout>

Arriba está la gran list_view y por debajo se encuentra la pequeña vista list_item .

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout >:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Name"
android:id="@+id/name"
android:layout_gravity="center_horizontal"
android:layout_weight="0.08" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Mobile"
android:id="@+id/mobile"
android:layout_gravity="center_horizontal"
android:layout_weight="0.10" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Phone"
android:id="@+id/phone"
android:layout_gravity="center_horizontal"
android:layout_weight="0.15" />
</LinearLayout>

Y para especificar la actividad lanzador entre todo esto es menifest .

<?xml version="1.0" encoding="utf-8"?>
<manifest >:android="http://schemas.android.com/apk/res/android"
package="includehelp.articles">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

Y tenemos la salida aquí,


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *