Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 从基本适配器中viewholder的特定条目更改特定textview_Android_Listview_Baseadapter - Fatal编程技术网

Android 从基本适配器中viewholder的特定条目更改特定textview

Android 从基本适配器中viewholder的特定条目更改特定textview,android,listview,baseadapter,Android,Listview,Baseadapter,在这里,我有一个部分过滤器列表视图,其中包含图像、状态文本和大量内容,现在我正在监听其中的状态更改,因此我不想清除()整个列表只为一个状态更改重新填充它。换句话说,我正在寻找一种方法,从我的列表中特定的视图持有者的文本视图中选择1个文本视图,你能帮我怎么做吗?以下是我的适配器部分: public PinnedHeaderAdapter(Context context, ArrayList<String> listItems,ArrayList<Integer> li

在这里,我有一个部分过滤器列表视图,其中包含图像、状态文本和大量内容,现在我正在监听其中的状态更改,因此我不想清除()整个列表只为一个状态更改重新填充它。换句话说,我正在寻找一种方法,从我的列表中特定的视图持有者的文本视图中选择1个文本视图,你能帮我怎么做吗?以下是我的适配器部分:

  public PinnedHeaderAdapter(Context context, ArrayList<String> 
listItems,ArrayList<Integer> listSectionPos) {
    this.mContext = context;
    this.mListItems = listItems;
    this.mListSectionPos = listSectionPos;

    mLayoutInflater = (LayoutInflater) 
 mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}

@Override
public int getCount() {
    return mListItems.size();
}

@Override
public boolean areAllItemsEnabled() {
    return false;
}

@Override
public boolean isEnabled(int position) {
    return !mListSectionPos.contains(position);
}

@Override
public int getViewTypeCount() {
    return TYPE_MAX_COUNT;
}

@Override
public int getItemViewType(int position) {
    return mListSectionPos.contains(position) ? TYPE_SECTION : TYPE_ITEM;
}

@Override
public Object getItem(int position) {
    return mListItems.get(position);
}

@Override
public long getItemId(int position) {
    return mListItems.get(position).hashCode();
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    ViewHolder holder = null;



     if (convertView == null) {
        holder = new ViewHolder();
        int type = getItemViewType(position);

        switch (type) {
        case TYPE_ITEM:
            convertView = mLayoutInflater.inflate(R.layout.row_view, 
  null);
             holder.imageview  = 
 (ImageView)convertView.findViewById(R.id.imageView3);
             holder.textviewpresence  = 
 (TextView)convertView.findViewById(R.id.presence);
             String name=mListItems.get(position).toString();
             String namer[] = name.split("\\@");
             String imagenamer=namer[0];

        //   String imagenamer= mListItems.get(position).toString();


             File file = new File("storage/sdcard/LifeMatePrivate
  /ProfileImage/ProfileImage,imagechange_1,"+imagenamer+".jpg");
         if (file.exists()){

             System.out.println("exists");
           //  holder.imageview.setImageURI(uri1);

            // Picasso.with(mContext)
            //  .load(uri1)
            //  .resize(70, 70)
            //  .centerCrop()
            //  .into(holder.imageview);
             Picasso.with(mContext).load(new File("storage/sdcard/LifeMatePrivate
 /ProfileImage/ProfileImage,imagechange_1,"+imagenamer+".jpg")).resize(70, 

 70).centerCrop().into(holder.imageview);


         }else{

             Picasso.with(mContext).load(new File("storage/sdcard
 /LifeMatePrivate/ProfileImage/Default.jpg")).resize(70, 
 70).centerCrop().into(holder.imageview);
            System.out.println("storage/sdcard/LifeMatePrivate
 /ProfileImage/ProfileImage,imagechange_1,"+imagenamer+".jpg"+"didnt exist"); 


         }

         XMPPConnection connection= MyService.connection;
         Roster roster = connection.getRoster();
         Presence entryPresence = roster.getPresence(imagenamer+"@reza-
 hp");
         Presence.Type pres = entryPresence.getType();

              if (pres == Presence.Type.available){
                  holder.textviewpresence.setText("Online");
              }

             break;
        case TYPE_SECTION:
            convertView = 
 mLayoutInflater.inflate(R.layout.section_row_view, null);
            break;
        }
        holder.textView = (TextView) 
 convertView.findViewById(R.id.row_title);
        convertView.setTag(holder);


    } else {
        holder = (ViewHolder) convertView.getTag();
    }



    holder.textView.setText(mListItems.get(position).toString());

    return convertView;
}
公共PinnedHeaderAdapter(上下文,ArrayList
listItems,ArrayList listSectionPos){
this.mContext=上下文;
this.mListItems=列表项;
this.mListSectionPos=listSectionPos;
MLAyoutFlater=(LayoutFlater)
mContext.getSystemService(Context.LAYOUT\u充气机\u服务);
}
@凌驾
public int getCount(){
返回mListItems.size();
}
@凌驾
公共布尔值areAllItemsEnabled(){
返回false;
}
@凌驾
公共布尔值isEnabled(整型位置){
return!mListSectionPos.contains(位置);
}
@凌驾
public int getViewTypeCount(){
返回类型\最大\计数;
}
@凌驾
public int getItemViewType(int位置){
返回mListSectionPos.contains(position)?TYPE_段:TYPE_项;
}
@凌驾
公共对象getItem(int位置){
返回mListItems.get(位置);
}
@凌驾
公共长getItemId(int位置){
返回mListItems.get(position.hashCode();
}
@凌驾
公共视图getView(int位置、视图转换视图、视图组父视图){
ViewHolder=null;
if(convertView==null){
holder=新的ViewHolder();
int type=getItemViewType(位置);
开关(类型){
案例类型\u项目:
convertView=MLAYOUTINGER.充气(右布局行视图,
无效);
holder.imageview=
(ImageView)convertView.findViewById(R.id.imageView3);
holder.textviewpresence=
(TextView)convertView.findViewById(R.id.presence);
String name=mListItems.get(position.toString();
字符串名称[]=name.split(“\\@”);
字符串imagenamer=namer[0];
//字符串imagenamer=mListItems.get(position.toString();
File File=新文件(“存储/SD卡/LifeMatePrivate
/ProfileImage/ProfileImage,imagechange_1,“+imagenamer+”.jpg”);
if(file.exists()){
System.out.println(“存在”);
//holder.imageview.setImageURI(uri1);
//毕加索(McContext)
//.负载(uri1)
//.调整大小(70,70)
//.centerCrop()
//.插入(支架.图像视图);
毕加索.with(mContext).load(新文件)(“存储/sdcard/LifeMatePrivate
/ProfileImage/ProfileImage,imagechange_1,“+imagenamer+”.jpg”)。调整大小(70,
70).将中心裁剪()插入(holder.imageview);
}否则{
毕加索.with(mContext).load(新文件)(“存储/SD卡
/LifeMatePrivate/ProfileImage/Default.jpg”)。调整大小(70,
70).将中心裁剪()插入(holder.imageview);
System.out.println(“存储/SD卡/LifeMatePrivate
/ProfileImage/ProfileImage,imagechange_1,“+imagenamer+”.jpg“+”不存在);
}
XMPPConnection=MyService.connection;
花名册=connection.get花名册();
Presence entryPresence=花名册.getPresence(imagenamer+“@reza-
惠普);
Presence.Type pres=entryPresence.getType();
if(pres==Presence.Type.available){
holder.textviewpresence.setText(“在线”);
}
打破
案例类型_部分:
convertView=
MLAYOUTINGER.充气(右布局剖面视图,空);
打破
}
holder.textView=(textView)
convertView.findViewById(R.id.row_title);
convertView.setTag(支架);
}否则{
holder=(ViewHolder)convertView.getTag();
}
holder.textView.setText(mListItems.get(position.toString());
返回视图;
}
在我想使用的SQL语言中,从mylist更新textview,其中getView.tag()=name:D