Это означает, что указанная переменная не указана ни на что. Я мог бы сгенерировать это так:
SqlConnection connection = null;
connection.Open();
Это вызовет ошибку, потому что, пока я объявил переменную «connection
», она не указала ни на что. Когда я пытаюсь вызвать член «Open
», для его устранения нет ссылки, и он будет вызывать ошибку.
Чтобы избежать этой ошибки:
object == null
. Инструмент Resharper JetBrains определит каждое место в вашем коде, которое имеет возможность ошибки нулевой ссылки, позволяя вам ввести нулевую проверку. Эта ошибка является источником ошибок номер один, IMHO.
Поместите это в onCreate()
ImageView imageView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.order);
imageView = (ImageView)findViewById(R.id.imgView);
new DownloadFilesTask().execute();
}
И ваш класс AsyncTask
должен быть таким,
private class DownloadFilesTask extends AsyncTask<Void, Void, Void> {
Drawable drawable;
@Override
protected Void doInBackground(Void... params) {
drawable = createDrawableFromURL(
"http://savagelook.com/misc/sl_drop2.png");
return null;
}
protected void onPostExecute(Void result) {
imageView.setImageDrawable(drawable);
}
}
Я думаю, что эта строка вызывает ошибку ..
imageView.setImageDrawable(createDrawableFromURL("http://savagelook.com/misc/sl_drop2.png"));
, и ошибка объясняет, почему это так ..
Only the original thread that created a view hierarchy can touch its views.
эта ошибка вызвана тем, что вы пытаясь изменить пользовательский интерфейс на mainthread из какого-то другого потока .. здесь doInBackground в вашем случае ...
У меня возникла такая же проблема, пытаясь изменить представление пользовательского интерфейса из c ++ с использованием JNI. Решением было использование
runOnUiThread(new Runnable() {
public void run(){
}
});
runOnUiThread - это метод Activity, поэтому я должен сделать свой экземпляр активности public static, чтобы иметь возможность вызвать мой публичный статический метод, который позже вызывает JNI.
Надеюсь, что это поможет другим:)
PS: отсюда я узнаю, как использовать JNI http://www.cocos2d-x.org/projects/cocos2d-x/wiki/How_to_use_jni для моей игры для Android, сделанной ранее с cocos2dx