日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

android 部分区域点击,Android编程实现ListView中item部分区域添加点击事件功能

發(fā)布時(shí)間:2024/9/27 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 部分区域点击,Android编程实现ListView中item部分区域添加点击事件功能 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文實(shí)例講述了Android編程實(shí)現(xiàn)ListView中item部分區(qū)域添加點(diǎn)擊事件功能。分享給大家供大家參考,具體如下:

需求如題目:Android listview中item部分區(qū)域添加點(diǎn)擊事件,在一個(gè)界面顯示了listview,但顯示的內(nèi)容分為上下兩部分,分別是白色的背景和藍(lán)色的背景,現(xiàn)在需要只點(diǎn)擊藍(lán)色的背景,才能跳轉(zhuǎn)到其他界面,解決方式如下:

一開(kāi)始想著是不是能在list item的布局給上層布局添加一個(gè):

android:clickable="false"

android:focusable="false"

就是禁止點(diǎn)擊,但試了試沒(méi)有效果,后來(lái)師傅提醒我,我的這個(gè)listview使用的適配器是BaseAdapter可以在適配器里面拿到下層藍(lán)色的Relativelayout的id,然后給這個(gè)布局添加點(diǎn)擊事件,就可以實(shí)現(xiàn)部分區(qū)域響應(yīng)事件,事實(shí)證明是非常可行的,貼出主要的代碼如下:

// 開(kāi)倉(cāng)單適配器

public class OrderAdapter extends BaseAdapter {

public OrderAdapter(Context myContext) {

}

public OrderAdapter(OrderFragment orderFragment) {

}

@Override

public int getCount() {

if (dataMap == null) {

return orderVec.length;

}

return dataMap.size();

}

@Override

public Object getItem(int position) {

return position;

}

@Override

public long getItemId(int position) {

return position;

}

@Override

public View getView(int position, View convertView, ViewGroup parent) {

ViewHolder viewHolder = null;

if (convertView == null) {

viewHolder = new ViewHolder();

convertView = getActivity().getLayoutInflater().inflate(

R.layout.activity_order_item, null);

initViewHolder(convertView, viewHolder, position);

//關(guān)鍵代碼,獲得下層藍(lán)色的布局的id

} else {

viewHolder = (ViewHolder) convertView.getTag();

}

refreshViewHolder(position, viewHolder);

return convertView;

}

private void refreshViewHolder(int position, ViewHolder viewHolder) {

//。。。。。。。。

}

private void initViewHolder(View convertView, ViewHolder viewHolder,

final int position) {

viewHolder.modeifyorder = (RelativeLayout) convertView

.findViewById(R.id.modeifyorder);

viewHolder.modeifyorder.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

Map map = dataMap.get(position);

long orderId = Long.parseLong(map.get(Orderid).toString());

String instStr = map.get(Instrument).toString();

DocCaptain.getInstance().setOrderTrade2Modify(instStr,

orderId);

getSelfActivity().showOrHideOrderTradeFragment();

}

});

convertView.setTag(viewHolder);

}

private class ViewHolder {

TextView orderid;

TextView iFDStopPrice;

RelativeLayout modeifyorder;

}

}

成功完成,記錄一下。

希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。

總結(jié)

以上是生活随笔為你收集整理的android 部分区域点击,Android编程实现ListView中item部分区域添加点击事件功能的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。