我试图解决这个问题好几天,但还没有运气。请帮助我。我需要编写一个函数来接受 URL 作为参数并返回 ImageView。有人可以告诉我如何修改此代码来做到这一点吗?它给了我下面的红线imgURL.setImageBitmap(directory.getString(TAG_IMAGE));
public class ViewProfileActivity extends Activity {
ImageView imgURL;
TextView txtName;
String eid;
private ProgressDialog pDialog;
JSONParser jsonParser = new JSONParser();
private static final String url_veiw_directory = "http://website.com/app/include/view_directory.php";
private static final String TAG_SUCCESS = "success";
private static final String TAG_DIRECTORY = "directory";
private static final String TAG_ID = "eid";
private static final String TAG_IMAGE = "image";
private static final String TAG_NAME = "name";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.view_directory);
Intent i = getIntent();
eid = i.getStringExtra(TAG_ID);
new GetDirectoryDetails().execute();
}
class GetDirectoryDetails extends AsyncTask<String, String, String> {
protected String doInBackground(String... params) {
runOnUiThread(new Runnable() {
public void run() {
int success;
try {
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("id", eid));
JSONObject json = jsonParser.makeHttpRequest(url_veiw_directory, "GET", params);
Log.d("Single Directory Details", json.toString());
success = json.getInt(TAG_SUCCESS);
if (success == 1) {
JSONArray directoryObj = json.getJSONArray(TAG_DIRECTORY);
JSONObject directory = directoryObj.getJSONObject(0);
imgURL = (ImageView) findViewById(R.id.image);
txtName = (TextView) findViewById(R.id.name);
imgURL.setImageBitmap(directory.getString(TAG_IMAGE));
txtName.setText(directory.getString(TAG_NAME));
}else{
}
} catch (JSONException e) {
e.printStackTrace();
}
}
});
return null;
}
protected void onPostExecute(String file_url) {
pDialog.dismiss();
}
}
}