// activity_main.xml
<?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="com.krishanandroid.listviewcustomadapter.MainActivity"> <EditText android:id="@+id/et_actor"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/enter_actor_name"
android:textSize="16sp"
android:gravity="center"
android:textColor="@color/colorAccent"
android:inputType="text"/> <EditText android:id="@+id/et_actress"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/enter_actress_name"
android:gravity="center"
android:textSize="16sp"
android:textColor="@color/colorAccent"
android:inputType="text"/> <EditText android:id="@+id/et_movie"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/enter_movie_name"
android:gravity="center"
android:textSize="16sp"
android:textColor="@color/colorAccent"
android:inputType="text"/> <Button android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Add"
android:id="@+id/button_add"
android:textSize="16sp"
android:layout_marginBottom="12dp"/> <ListView android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="4dp"
android:id="@+id/listview"></ListView> </LinearLayout>
// Data.javapackage com.krishanandroid.listviewcustomadapter; /** * Created by user on 9/13/2018. */ public class Data { private String actor; private String actress; private String movie; // Beans class public Data(String actor, String actress, String movie) { this.actor = actor; this.actress = actress; this.movie = movie; } public String getActor() { return actor; } public void setActor(String actor) { this.actor = actor; } public String getActress() { return actress; } public void setActress(String actress) { this.actress = actress; } public String getMovie() { return movie; } public void setMovie(String movie) { this.movie = movie; } }// MainActivity.javapackage com.krishanandroid.listviewcustomadapter; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.ListView; import android.widget.TextView; import java.util.ArrayList; public class MainActivity extends AppCompatActivity { EditText mActor, mActress, mMovies; Button mButton; ListView mList; ArrayList<Data> arrayList; MyAdapter myAdapter; // inner class class MyAdapter extends BaseAdapter{ @Override public int getCount() { return arrayList.size(); } @Override public Object getItem(int position) { return null; } @Override public long getItemId(int position) { return 0; } @Override public View getView(int position, View convertView, ViewGroup parent) { Data data = arrayList.get(position); View view = getLayoutInflater().inflate(R.layout.row_items,null); TextView tv1 = view.findViewById(R.id.t_actor); TextView tv2 = view.findViewById(R.id.t_actress); TextView tv3 = view.findViewById(R.id.t_movies); tv1.setText(data.getActor()); tv2.setText(data.getActress()); tv3.setText(data.getMovie()); return view; } } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // initialization mActor = findViewById(R.id. et_actor); mActress = findViewById(R.id. et_actress); mMovies = findViewById(R.id. et_movie); mButton = findViewById(R.id. button_add); mList = findViewById(R.id. listview); arrayList = new ArrayList<Data>(); myAdapter = new MyAdapter(); mList.setAdapter(myAdapter); mButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String actor_name = mActor.getText().toString(); String actress_name = mActress.getText().toString(); String movie_name = mMovies.getText().toString(); Data data = new Data(actor_name, actress_name, movie_name); arrayList.add(data); myAdapter.notifyDataSetChanged(); // adapter changesmActor.setText(" "); // set empty after data added to list view mActress.setText(" "); mMovies.setText(" "); mActor.requestFocus(); // cursor focus } }); } }Live Demo: https://www.youtube.com/watch?v=Ya5-eWg9SHI
No comments:
Post a Comment