gpt4 book ai didi

android - 从 NetworkImageView 获取 url

转载 作者:行者123 更新时间:2023-11-29 01:33:05 24 4
gpt4 key购买 nike

我填充了一个 ListView,其中每行中的一项是 NetworkImageView。现在我通过 Intent putExtra() 将每一行传递给 detail_product Activity 。

我正在使用 TextViews:

String pName = ((TextView) view.findViewById(R.id.name)).getText().toString();
...
i.putExtra(TAG_NAME, pName);

如何处理 NetworkImageView?我无法使用 getTextgetResources()

编辑

@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (inflater == null)
inflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
if (convertView == null)
convertView = inflater.inflate(R.layout.list_row, null);

if (imageLoader == null)
imageLoader = AppController.getInstance().getImageLoader();
NetworkImageView thumbNail = (NetworkImageView) convertView
.findViewById(R.id.thumbnail);

TextView name = (TextView) convertView.findViewById(R.id.name);


Product m = productItems.get(position);

// thumbnail image
String url = m.getThumbnailUrl();
thumbNail.setImageUrl(url, imageLoader);
thumbNail.setTag(url);

// name
name.setText(m.getName());



}

最佳答案

没有可用于为您提供 URL 设置的 NetworkImageView 的 getter。

一种方法是为您的 NetworkImageView 使用标签。您可以将图像 URL 设置为 NetworkImageView 的标记。例如。 holder.thumbNail.setTag(imgUrl) 在 ListView 适配器的 getView(...) 中。

在 ListView 的 onItemClick 监听器中

    listView.setOnItemClickListener(new OnItemClickListener() {

@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
NetworkImageView v = (NetworkImageView) view.findViewById(R.id.thumbnail);
String imgUrl = (String) v.getTag();

另一种方法是通过反射 [请避免,正如您所看到的,我提到了“mUrl”,这是一个在 NetworkImageView 中使用的私有(private)变量,很可能随时发生变化]

    Class nw = NetworkImageView.class;
try {
Field url=nw.getDeclaredField("mUrl");
url.setAccessible(true);
String imgUrl=(String) url.get(your_networkview_object);
} catch (NoSuchFieldException | IllegalAccessException | IllegalArgumentException e) {
e.printStackTrace();
}

关于android - 从 NetworkImageView 获取 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30176097/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com