国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

老生常談Listview中onItemClick中的各個參數(推薦)

2019-10-23 18:31:44
字體:
來源:轉載
供稿:網友

listview,onitemclick

要實現點擊上面listview中每一行中的請假就會獲得該行的人名來調用相應的webservice接口,

departmenttongji_item:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:orientation="vertical"  >    <LinearLayout      android:layout_width="match_parent"      android:layout_height="30dp"      android:orientation="horizontal"      android:gravity="center_vertical"      >      <TextView        android:id="@+id/name"        android:layout_marginLeft="@dimen/activity_vertical_margin"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="張三"        style="@style/home_word_style"        />      <TextView        android:visibility="gone"        android:id="@+id/dayofkq"        android:layout_marginLeft="30dp"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        style="@style/home_word_style"        />    </LinearLayout>    <LinearLayout      android:layout_width="match_parent"      android:layout_height="40dp"      android:orientation="horizontal"      android:gravity="center_vertical"      >      <TextView        android:text="出勤"        android:layout_marginLeft="16dp"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        style="@style/home_word_style"        />      <TextView        android:gravity="center"        android:text="1"        android:id="@+id/work"        android:layout_marginLeft="10dp"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        style="@style/home_word_style"        android:textColor="@color/colorTran"        android:background="@drawable/sekuai_chuqin"        />      <TextView        android:text="請假"        android:layout_marginLeft="14dp"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        style="@style/home_word_style"        />      <TextView        android:gravity="center"        android:text="1"        android:id="@+id/holiday"        android:layout_marginLeft="10dp"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        style="@style/home_word_style"        android:textColor="@color/colorTran"        android:background="@drawable/sekuai_chidao"        />      <TextView        android:text="出差"        android:layout_marginLeft="14dp"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        style="@style/home_word_style"        />      <TextView        android:gravity="center"        android:text="1"        android:id="@+id/outwork"        android:layout_marginLeft="10dp"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        style="@style/home_word_style"        android:textColor="@color/colorTran"        android:background="@drawable/sekuai_chuchai"        />      <TextView        android:text="缺勤"        android:layout_marginLeft="14dp"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        style="@style/home_word_style"        />      <TextView        android:gravity="center"        android:text="1"        android:id="@+id/nowork"        android:layout_marginLeft="10dp"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        style="@style/home_word_style"        android:textColor="@color/colorTran"        android:background="@drawable/sekuai_queqin"        />    </LinearLayout></LinearLayout>

Listview中的adapter:

public class KqtjAdapter extends BaseAdapter{  ArrayList<PersonKqStatisInfo> list;Context mcontext;  public KqtjAdapter(ArrayList<PersonKqStatisInfo> list, Context mcontext) {    this.list = list;    this.mcontext = mcontext;  }  @Override  public int getCount() {    return list.size();  }  @Override  public Object getItem(int position) {    return list.get(position);  }  @Override  public long getItemId(int position) {    return position;  }  @Override  public View getView( int position, View convertView, ViewGroup parent) {    ViewHolder viewHolder;    if (convertView==null) {      convertView = LayoutInflater.from(mcontext).inflate(R.layout.departmenttongji_item, null);      viewHolder=new ViewHolder();      viewHolder.holiday=(TextView)convertView.findViewById(R.id.holiday);      viewHolder.name=(TextView)convertView.findViewById(R.id.name);      viewHolder.work=(TextView)convertView.findViewById(R.id.work);      viewHolder.nowork=(TextView)convertView.findViewById(R.id.nowork);      viewHolder.outwork=(TextView)convertView.findViewById(R.id.outwork);      viewHolder.dayofkq=(TextView)convertView.findViewById(R.id.dayofkq);      convertView.setTag(viewHolder);    }    else {      viewHolder=(ViewHolder)convertView.getTag();    }    viewHolder.name.setText(list.get(position).getName());    viewHolder.work.setText(list.get(position).getWork()+"");    viewHolder.nowork.setText(list.get(position).getNowork()+"");    viewHolder.outwork.setText(list.get(position).getOutwrok()+"");    viewHolder.holiday.setText(list.get(position).getHoliday()+"");    viewHolder.holiday.setOnClickListener(new View.OnClickListener() {      @Override      public void onClick(View v) {        Log.i("tag","position:"+ position+"");      }    });    return convertView;  }  class ViewHolder{    TextView name,         work,         nowork,         outwork,         dayofkq,         holiday;  }}

上面是該listview的adapter,如果直接在adapter中調用點擊事件時發現Log.i(“tag”,”position:”+ position+”“)輸出的position的值并不是所得到的點擊的當前行的值,所以并不能通過這種方法來獲取點擊請假的時候獲取當前行的人名。

這時候就這時候就要理解

public void onItemClick(AdapterView parent, View view, int position,long id) {

}

中的參數的意思,其中view是當前點擊行所在的view,position是當前行的位置其值和id相同。

因此就可以在該方法中實現獲取當前點擊請假所在的行的人名:

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {          @Override          public void onItemClick(AdapterView<?> parent, View view, int position,long id) {            final TextView name=(TextView)view.findViewById(R.id.name);            view.findViewById(R.id.work).setOnClickListener(new View.OnClickListener() {              @Override              public void onClick(View v) {                Log.i("tag"," P: "+name.getText().toString());              }            });          }        });

上面的view也就是當前所點擊的行的view,可以通過該view來找到里面的每個元素。

以上這篇老生常談Listview中onItemClick中的各個參數(推薦)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 缙云县| 富顺县| 石泉县| 梓潼县| 凉城县| 白朗县| 冷水江市| 盘锦市| 麻江县| 玉林市| 台北市| 阿合奇县| 方山县| 霸州市| 佛教| 怀远县| 天津市| 和田市| 绥化市| 高雄县| 崇州市| 平安县| 永康市| 林周县| 手游| 信丰县| 广州市| 女性| 铁岭市| 环江| 赤城县| 大城县| 若尔盖县| 仲巴县| 长宁县| 尚志市| 上蔡县| 南木林县| 宁海县| 鹰潭市| 吉林省|