0

我在我的应用程序中使用自定义列表视图。在我的行中我有(两个图像,剩余的文本视图)。

当我单击其中一个 textview 时,我想设置另一个 textview 数据。我编写了下面的代码来执行此操作

     likes.setOnClickListener(new OnClickListener() {


        public void onClick(View v) {
//          if(likes.getText().toString().equals("Like")){
               TextView t=(TextView)v;
              TextView likesnumber1 = (TextView) findViewById(R.id.likesnumber);
//            TextView  likesnumber = (TextView) convertView.findViewById(R.id.likesnumber);
                int i=  Integer.parseInt(likescount.get(position));

           if(like_or_ulike.get(position).equals("Like")){
                Log.e("inlike","like");
                like_or_ulike.set(position, "Unlike");
                t.setText(like_or_ulike.get(position));
                UrltoValue.getValuefromUrl("https://graph.facebook.com/"+objectid.get(position)+"/likes?access_token="+accesstoken+"&method="+"post");
//             listView.getAdapter().getItemAt(position);
               j=i+1;
               String s=Integer.toString(j);
            likescount.set(position, s);
             likesnumber1.setText(likescount.get(position));

            }
            else{
                Log.e("unlike","unlike");
                like_or_ulike.set(position, "Like");
                t.setText(like_or_ulike.get(position));
                UrltoValue.getValuefromUrl("https://graph.facebook.com/"+objectid.get(position)+"/likes?access_token="+accesstoken+"&method="+"DELETE");

                   j=i-1;
                 String s=Integer.toString(j);
                likescount.set(position, s);
                 likesnumber1.setText(likescount.get(position));
            }
        }
    });

当我单击 textview 时,如何获取特定行的另一个 textview id。是否可以获取该特定行的 id。

4

2 回答 2

1

当您想在同一行中获取 textview 时,您可以执行以下操作。

使用单击的文本视图获取其父视图,然后使用父视图,您可以搜索您的文本视图:

View parent = (View) textViewThatWasClicked.getParent();
        if (parent != null) {
            TextView textViewThatYouWantToChange = parent.findViewById(R.id.textViewThatYouWantToChange);
            textViewThatYouWantToChange.setText(...);
        }

您需要将要查找的 id 更改为其他 textview 的 id。如果您需要设置一个 id,您可以在您使用的 xml 布局文件中执行此操作。

我不能很好地遵循你的代码来实际给你代码,但这应该足以让你朝着正确的方向前进。

于 2012-11-22T13:29:02.660 回答
0

如果列表视图中的每一行都有自定义布局,那么您可以为自定义视图中的每个视图提供 id,然后为您的列表视图设置 setOnItemClickListener,您将能够以视图的形式访问每一行。当您可以像视图一样访问您的行时,您可以使用 view.findViewById 并通过它们的 id 从自定义视图中获取所有视图。

于 2012-11-22T13:24:17.390 回答