title: How can set value in TextView in ListVIew row item?
body: <p>In ListView row item where is two TextView which is textview(name) and textview(mobile no), when i click textView(mobile no) then same value come again and again, but in list view every list giving correct mobile no.</p>
  
  <pre><code>public class CustomerDetails extends AppCompatActivity {
  
  ArrayList&lt;com.venue.entities.CustomerDetails&gt; arrayList;
  Map&lt;String, Boolean&gt; isSelectedMap;
  HashMap&lt;String, Bookings&gt; mapBookingsList;
  ListView listView;
  LinearLayout linearLayout;
  com.venue.entities.CustomerDetails customerDetails;
  Viewholder viewHolder;
  
  @SuppressLint("NewApi")
  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
  
      if (android.os.Build.VERSION.SDK_INT &gt;= android.os.Build.VERSION_CODES.LOLLIPOP) {
          Window window = getWindow();
          window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
          window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
          window.setStatusBarColor(getResources().getColor(R.color.primary_color_dark));
      }
      setContentView(R.layout.customer_details_layout);
  
      listView = (ListView) findViewById(R.id.customerDetials_listview);
  
      HashMap&lt;String, Bookings&gt; mapBookingsList = new HashMap&lt;&gt;();
      ArrayList&lt;String&gt; dates = new ArrayList&lt;String&gt;();
      init();
  
      try {
          String bookingJson = (String) getIntent().getStringExtra("booking");
          String selectedJson = (String) getIntent().getStringExtra("selected");
          Type bookingType = new TypeToken&lt;HashMap&lt;String, Bookings&gt;&gt;() {
          }.getType();
          Type selectedType = new TypeToken&lt;HashMap&lt;String, Boolean&gt;&gt;() {
          }.getType();
          mapBookingsList = new Gson().fromJson(bookingJson, bookingType);
          isSelectedMap = new Gson().fromJson(selectedJson, selectedType);
          for (Map.Entry&lt;String, Boolean&gt; entry : isSelectedMap.entrySet()) {
              dates.add(entry.getKey());
          }
          arrayList = new ArrayList&lt;&gt;();
          for (String date : dates) {
              if (mapBookingsList.containsKey(date)) {
                  Bookings obj = mapBookingsList.get(date);
                  arrayList.add(new com.venue.entities.CustomerDetails(obj.getCustomer_name(),
                          obj.getCustomer_contact(), obj.getFor_date()));
              }
          }
      } catch (Exception e) {
          e.printStackTrace();
      }
  
  
      CommonBaseAdapter adapter = new CommonBaseAdapter(CustomerDetails.this, arrayList) {
  
  
          @Override
          public View getViews(final int position, View convertView, ViewGroup parent, ArrayList&lt;?&gt; arrayList) {
              viewHolder = new Viewholder();
              customerDetails = (com.venue.entities.CustomerDetails) arrayList.get(position);
  
              if (convertView == null) {
                  LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                  convertView = inflater.inflate(R.layout.customer_details_item_layout, parent, false);
                  viewHolder.dateTextView = (TextView) convertView.findViewById(R.id.cutomerDetails_textView_date);
                  viewHolder.customerNameTextView = (TextView) convertView.findViewById(R.id.cutomerDetails_textView_name);
                  viewHolder.customerMobileTextView = (TextView) convertView.findViewById(R.id.cutomerDetails_textView_number);
                  viewHolder.imageButtonCall= (ImageButton) convertView.findViewById(R.id.callButtonImage);
  
              }
              else {
                   viewHolder = (Viewholder) convertView.getTag();
              }
  
              if(customerDetails.getName().equals(""))
              {
                  viewHolder.customerNameTextView.setText(R.string.name_not_available);
  
              }
              else
              {
                  viewHolder.customerNameTextView.setText(customerDetails.getName());
              }
  
              if(customerDetails.getMobileNumber().equals(""))
              {
                  viewHolder.customerMobileTextView.setText(R.string.contact_not_available);
                  viewHolder.imageButtonCall.setVisibility(View.GONE);
              }
              else
              {
                  viewHolder.customerMobileTextView.setText(customerDetails.getMobileNumber());
              }
  
              SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
              try {
                  Date date = format.parse(customerDetails.getFor_date());
                  SimpleDateFormat sdf = new SimpleDateFormat("dd MMM, yyyy");
                  String dateString = sdf.format(date);
  
                  viewHolder.dateTextView.setText(dateString);
              } catch(Exception e){
                  e.printStackTrace();
              }
  
              //Direct Call
              viewHolder.imageButtonCall.setOnClickListener(new View.OnClickListener() {
                  @Override
                  public void onClick(View v)
                  {
                      //TODO here when click same no. is shwoing...
                      Intent callIntent = new Intent(Intent.ACTION_CALL);
                      String srt = customerDetails.get(position).getMobileNumber();
                      callIntent.setData(Uri.parse("tel:" + srt));
                      startActivity(callIntent);
                  }
              });
  
              return convertView;
          }
      };
      listView.setAdapter(adapter);
  }
  
  public class Viewholder {
      TextView dateTextView;
      TextView customerNameTextView;
      TextView customerMobileTextView;
      ImageButton imageButtonCall;
  }
  
  private void init() {
      new LogoutUtils(this).registerReceiver(logoutReceiver);
  
      ActionBar actionBar = getSupportActionBar();
      ActionBarUtils actionBarUtils = new ActionBarUtils(CustomerDetails.this);
      actionBarUtils.setActionBar(actionBar);
      actionBarUtils.setTitleTextView(getString(R.string.customer_detail));
  }
  
  
  @Override
  public boolean onCreateOptionsMenu(Menu menu) {
      MenuInflater inflater = getMenuInflater();
      inflater.inflate(R.menu.main, menu);
      return super.onCreateOptionsMenu(menu);
  }
  
  @Override
  public boolean onOptionsItemSelected(MenuItem item) {
      // Handle action buttons
      switch (item.getItemId()) {
      case R.id.action_settings:
          new SettingsDialog(CustomerDetails.this).showDialog();
          return true;
      case android.R.id.home:
          onBackPressed();
          return true;
      default:
          return super.onOptionsItemSelected(item);
      }
  }
  
  @Override
  protected void onDestroy() {
      try {
          new LogoutUtils(CustomerDetails.this).commonFunctionality(logoutReceiver);
      } catch (Exception e) {
          e.printStackTrace();
      }
      super.onDestroy();
  }
  
  private final BroadcastReceiver logoutReceiver = new    BroadcastReceiver() {
      @Override
      public void onReceive(Context context, Intent intent) {
          try {
              finish();
          } catch (Exception e) {
              e.printStackTrace();
          }
      }
  };
  }
  </code></pre>
  
  <p>CustomerDetails.java</p>
  
  <pre><code>public class CustomerDetails implements Serializable{
  
  String name;
  String mobileNumber;
  String for_date;
  
  public CustomerDetails(String name, String mobileNumber, String for_date){
      this.name = name;
      this.mobileNumber = mobileNumber;
      this.for_date = for_date;
  }
  
  public String getName() {
      return name;
  }
  public void setName(String name) {
      this.name = name;
  }
  public String getMobileNumber() {
      return mobileNumber;
  }
  public void setMobileNumber(String mobileNumber) {
      this.mobileNumber = mobileNumber;
  }
  public String getFor_date() {
      return for_date;
  }
  public void setFor_date(String for_date) {
      this.for_date = for_date;
  }
  
  }
  </code></pre>
  
  <p>customer_details_item_layout.xml</p>
  
  <pre><code> &lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout            xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:card_view="http://schemas.android.com/apk/res-auto"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:orientation="vertical"&gt;
  
  &lt;android.support.v7.widget.CardView
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:layout_margin="5dp"
      card_view:cardCornerRadius="4dp"&gt;
  
      &lt;RelativeLayout
          android:id="@+id/ll_customer_details_row"
          android:layout_width="match_parent"
          android:layout_height="80dp"
          android:background="@color/gray_drawer"&gt;
  
          &lt;com.venue.components.TextViewCircular
              android:id="@+id/cutomerDetails_textView_date"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:paddingLeft="5dp"
              android:textSize="10sp" /&gt;
  
          &lt;com.venue.components.TextViewCircular
              android:id="@+id/cutomerDetails_textView_name"
              android:layout_width="match_parent"
              android:layout_height="25dp"
              android:layout_below="@+id/cutomerDetails_textView_date"
              android:paddingLeft="5dp" /&gt;
  
          &lt;com.venue.components.TextViewCircular
              android:id="@+id/cutomerDetails_textView_number"
              android:layout_width="match_parent"
              android:layout_height="25dp"
              android:layout_below="@+id/cutomerDetails_textView_name"
              android:layout_marginLeft="5dp" /&gt;
  
          &lt;ImageButton
              android:id="@+id/callButtonImage"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_alignParentRight="true"
              android:layout_below="@+id/cutomerDetails_textView_name"
              android:layout_marginRight="5dp"
              android:background="@color/transparent"
              android:src="@drawable/phone" /&gt;
  
      &lt;/RelativeLayout&gt;
  &lt;/android.support.v7.widget.CardView&gt;
  
  &lt;/LinearLayout&gt;
  </code></pre>