How to add A TextView dynamically to Android ListView items?

I want to add a TextView and set its value dynamically to the ListView and by clicking on the item that I want to get the value of the item clicked.

I have an array

String[] statesList = {"listItem 1", "listItem 2", "listItem 3"}; 

My TextView XML is

 <?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="10dp" android:textSize="16sp" android:textStyle="bold" > </TextView> 

My ListView XML

  <ListView android:id="@+id/list" android:choiceMode="singleChoice" android:layout_height="wrap_content" android:layout_marginLeft="5dp" android:layout_marginTop="10dp" android:layout_width="290dp"/> 

Please help me how can I set these values ​​in an array in listview. i am new in android.Thanks

+6
source share
2 answers

Use this code, I hope this is what you want

 public void showstatesList() { listView = (ListView) findViewById(R.id.list); String[] statesList = {"listItem 1", "listItem 2", "listItem 3"}; ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, statesList); listView.setAdapter(adapter); listView.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { int itemPosition = position; String itemValue = (String) listView.getItemAtPosition(position); // Toast.makeText(getApplicationContext(), // "Position :"+itemPosition+" ListItem : " +itemValue , Toast.LENGTH_LONG) // .show(); } }); } 
+2
source

Hope this helps you.

 import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.TextView; public class MainActivity extends Activity { TextView tv; ListView lv; String s=""; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv=(TextView) findViewById(R.id.textView1); lv=(ListView) findViewById(R.id.listView1); String value[]={"asda","Ansar","Nisam"}; ArrayAdapter<String>adapter=new ArrayAdapter<String>(getBaseContext(), android.R.layout.simple_list_item_1,android.R.id.text1,value); lv.setAdapter(adapter); //list item click lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) { s=s+("\n")+((String) lv.getItemAtPosition(arg2)); tv.setText(s); } }); } 
+1
source

Source: https://habr.com/ru/post/951699/


All Articles