获取文本从customAdapter在ListView [英] Getting Text From the ListView in customAdapter
本文介绍了获取文本从customAdapter在ListView的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在获得特别TextView的价值问题,我收到的最后一个下面的值是customAdapter了我的$ C $ getview的C() 基本上我想要的是更新的加号按钮点击,反之亦然
数量文本 @覆盖
公共查看getView(INT位置,查看convertview,ViewGroup中父){
LayoutInflater layoutInflater =((活动)活性).getLayoutInflater();
最后的HashMap<,&GT?;地图= list.get(位置);
如果(convertview == NULL)
{
convertview = layoutInflater.inflate(R.layout.listviewdetails,父母,假);
持有人=新Viewholder();
holder.title =(TextView中)convertview.findViewById(R.id.lserving_size_grams);
holder.servingsize =(TextView中)convertview.findViewById(R.id.ltvprotiendesclabel);
holder.Fiber =(TextView中)convertview.findViewById(R.id.lFiberview);
holder.lserving_qty =(TextView中)convertview.findViewById(R.id.lvalueserving);
holder.ckbox =(复选框)convertview.findViewById(R.id.lsave_item_box);
holder.sminus =(ImageView的)convertview.findViewById(R.id.limage_minus);
holder.splus =(ImageView的)convertview.findViewById(R.id.limage_plus);
convertview.setTag(保持器);
}
其他
{
支架=(Viewholder)convertview.getTag();
}
//开复选框检查活动
holder.ckbox.setOnCheckedChangeListener(空);
holder.splus.setOnClickListener(空);
holder.ckbox.setChecked(checkedItems [位置]);
holder.ckbox.setTag(R.id.lsave_item_box,位置);
//holder.splus.setOnClickListener(null);
holder.lserving_qty.setText(checkedAddSub [位置] qtysavesearch [位置]:map.get(Constants.NF_SERVING_SIZE_QTY)的ToString());
holder.splus.setTag(R.id.limage_plus,位置);
/ *
*成Btn加点击监听器
* /
holder.splus.setOnClickListener(新OnClickListener(){
@覆盖
公共无效的onClick(视图v){
// TODO自动生成方法存根
最终诠释位置=(整数)v.getTag(R.id.limage_plus);
// holder.lserving_qty.getText(checkedAddSub [位置] qtysavesearch [位置]:map.get(Constants.NF_SERVING_SIZE_QTY)的ToString());
//counter=Math.round(Float.valueOf(serving_size_qty[position]));
计数器= Math.round(Float.valueOf(holder.lserving_qty.getText()的toString())。);
如果(柜> = 1)
{
反++;
qtysavesearch [位置] =将String.valueOf(柜);
checkedAddSub [位置] =真;
notifyDataSetChanged();
}
其他
{
checkedAddSub [位置] = FALSE;
notifyDataSetChanged();
}
}
});
请帮我在此先感谢
解决方案
公共无效onShowButtonClickHandler(视图v){
RelativeLayout的RL =(RelativeLayout的)v.getParent();
的LinearLayout LL =(的LinearLayout)rl.getChildAt(0);
TextView中的TextView =(TextView中)ll.getChildAt(0);
如果(!isTablet){
getSupportFragmentManager()的BeginTransaction()
.show(mapFragment)
.setCustomAnimations(R.anim.slide_out,R.anim.slide_out)
.hide(vehiclesFragment)
。承诺();
isVehiclesOpen = FALSE;
}
vehicleToShowHide = textView.getText()的toString()。
mapFragment.hideVehicle(vehicleToShowHide);
}
获取parentlayout位置,然后试图让那个孩子的位置相对于该布局,那么在将获得其中U点击butoon特定的行
I have a problem in getting the particular textview value and i am getting the value of the last one Here is My code of getview() of customAdapter Basically what i want is to update the Quantity text on plus button click and vice-versa
@Override
public View getView(int position, View convertview, ViewGroup parent) {
LayoutInflater layoutInflater=((Activity) activity).getLayoutInflater();
final HashMap<?, ?> map=list.get(position);
if(convertview==null)
{
convertview=layoutInflater.inflate(R.layout.listviewdetails,parent,false);
holder = new Viewholder();
holder.title=(TextView) convertview.findViewById(R.id.lserving_size_grams);
holder.servingsize=(TextView) convertview.findViewById(R.id.ltvprotiendesclabel);
holder.Fiber=(TextView)convertview.findViewById(R.id.lFiberview);
holder.lserving_qty=(TextView)convertview.findViewById(R.id.lvalueserving);
holder.ckbox=(CheckBox)convertview.findViewById(R.id.lsave_item_box);
holder.sminus=(ImageView)convertview.findViewById(R.id.limage_minus);
holder.splus=(ImageView)convertview.findViewById(R.id.limage_plus);
convertview.setTag(holder);
}
else
{
holder=(Viewholder)convertview.getTag();
}
//On Check Box Check Events
holder.ckbox.setOnCheckedChangeListener(null);
holder.splus.setOnClickListener(null);
holder.ckbox.setChecked(checkedItems[position]);
holder.ckbox.setTag(R.id.lsave_item_box, position);
//holder.splus.setOnClickListener(null);
holder.lserving_qty.setText(checkedAddSub[position] ? qtysavesearch[position] : map.get(Constants.NF_SERVING_SIZE_QTY).toString());
holder.splus.setTag(R.id.limage_plus,position);
/*
* Plus Btn click Listener
*/
holder.splus.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
final int position = (Integer) v.getTag(R.id.limage_plus);
// holder.lserving_qty.getText(checkedAddSub[position] ? qtysavesearch[position] : map.get(Constants.NF_SERVING_SIZE_QTY).toString());
//counter=Math.round(Float.valueOf(serving_size_qty[position]));
counter=Math.round(Float.valueOf(holder.lserving_qty.getText().toString()));
if(counter>=1)
{
counter++;
qtysavesearch[position]=String.valueOf(counter);
checkedAddSub[position]=true;
notifyDataSetChanged();
}
else
{
checkedAddSub[position]=false;
notifyDataSetChanged();
}
}
});
Please Help me Thanks in advance
解决方案
public void onShowButtonClickHandler(View v) {
RelativeLayout rl = (RelativeLayout) v.getParent();
LinearLayout ll = (LinearLayout) rl.getChildAt(0);
TextView textView = (TextView) ll.getChildAt(0);
if (!isTablet) {
getSupportFragmentManager().beginTransaction()
.show(mapFragment)
.setCustomAnimations(R.anim.slide_out, R.anim.slide_out)
.hide(vehiclesFragment)
.commit();
isVehiclesOpen = false;
}
vehicleToShowHide = textView.getText().toString();
mapFragment.hideVehicle(vehicleToShowHide);
}
Get the parentlayout position and then try to get the position of that child with respect to that layout and then u will get that particular Row on which u click the butoon
这篇关于获取文本从customAdapter在ListView的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文