gpt4 book ai didi

android - 捕获图像后如何更改 ListView 行图标?

转载 作者:行者123 更新时间:2023-11-29 17:18:05 27 4
gpt4 key购买 nike

我是 android 的新手,能够通过单击按钮时的相机 Intent 程序实现正常的图像捕获。现在我想要的假设我有一个自定义 ListView ,其中 ListView 行包含 TextView 和右侧的 ImageView ,如果我单击 ImageView ,则设备的默认相机应在捕获图像后打开,然后图像的路径应保存在数组,这继续下去,最重要的是我希望在返回到特定行项目的 ImageView 的 ListView Activity 图像(通过它触发相机 Intent )应该根据位置更改以通知用户图像成功捕获及其路径存储在数组。

我们将不胜感激任何帮助。提前致谢。

最佳答案

保存源 Activity 中的点击位置。使用源 Activity 的 onActivityResult 更新您的数据,并带有一个标志,指示图像已为给定位置捕获,并在适配器上调用 notifyDataSetChanged()。在适配器的 getView() 中,检查标志并相应地更新 View 。

编辑:添加了保存点击位置的代码

我的适配器.java

@Override
public View getView(final int position, View convertView, ViewGroup parent) {
if(mData.get(position).isImageCaptured(){
// handle image captured case
} else {
// handle normal case
}
}

public void updateData(int position,String path){
MyObject obj = mData.get(position);
obj.setPath(path);
obj.setImageCaptured(true);
mData.set(position,obj);
notifyDataSetChanged();
}

源 Activity

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode == REQUEST_CODE_CAMERA){
mAdapter.updateData(mSelectedPosition,imagePath);
}
}

public void onInitiateImageCapture(int position){

//rest of the boilerplate code to create camera intent

mSelectedPosition = position;
startActivityForResult(cameraIntent, REQUEST_CODE_CAMERA);
}

关于android - 捕获图像后如何更改 ListView 行图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37915966/

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