Intereting Posts
Как я могу открыть дозвон с номером телефона? Java.lang.ClassNotFoundException android + eclipse + maven + osx Fit Image в ImageButton в Android Пользовательский контроль яркости / цвета края для ListView? Проблема с Smack в приложении для чата Facebook для Android: Connection.getRoster (). GetEntries () всегда пуст Как обрабатывать параметр shouldInterceptRequest в API21? StartActivitySync зависает при возврате активности на передний план Использование Pashing Soap Service Retrofit Я столкнулся с таким исключением (т.е.) несогласованной моделью тела в модели огибающей класса в ответе Разрешено ли использование нескольких объявлений AdMob в RecyclerView? Альтернативная рекламная сеть? Вложенный фрагмент с неправильной ссылкой на действие после изменения конфигурации Показать ImageView частично за прозрачным ActionBar Не удается прочитать строки из текстового файла Как проверить, отвечает ли исходящий вызов, в Android? Android: как получить какое-либо событие KeyPress с примером? Как аутентифицироваться с помощью Alexa Voice Service с Android?

Что здесь означают «это» и «setContentView»?

Я пытался развернуть небольшое приложение для Android, где я пытался показать «Hello World» пользователю.

Строки кода, которые я использовал здесь, были (немного из интернет-ресурсов):

TextView text = new TextView(this); text.setText("Hello World, Here"); setContentView(text); 

Я не понимаю: почему this ключевое слово требуется здесь? Не могу ли я просто создать простой объект TextView Vanilla, чтобы установить текст следующим образом:

  TextView text = new TextView(); text.setText("Hello World, Here"); 

И какова цель метода setContentView здесь? Работает ли он как System.out.println java? Немного смущенный, любая помощь будет оценена. Благодарю .

  TextView text = new TextView(this); 

Это относится к текущему контексту в вашем случае контексту активности, так как вы хотите, чтобы текстовое представление в вашей деятельности.

Public void setContentView (просмотр)

Установите для содержимого активности явное представление. Это представление помещается непосредственно в иерархию представлений активности. Это может быть сложная иерархия представлений. При вызове этого метода параметры макета указанного представления игнорируются. Как ширина, так и высота представления по умолчанию устанавливаются MATCH_PARENT. Чтобы использовать собственные параметры макета, вместо этого вызовите setContentView (android.view.View, android.view.ViewGroup.LayoutParams).

параметры

View Требуемый контент для отображения.

http://developer.android.com/reference/android/app/Activity.html#setContentView(android.view.View)

В вашем случае setContentView (текст) вы устанавливаете представление, т.е. textview, на активность, т.е. на экран.

System.out.println («hello») в android будет печатать привет в logcat.

Что подразумевается под «этим» контекстом?

  TextView text = new TextView(this); 

Почему это ключевое слово требуется здесь?

Это относится к текущему объекту, который в вашем случае является Activity, поскольку вы, вероятно, выполняете этот код из onCreate вашего класса активности. И конструктор класса TextView по крайней мере требует контекста в качестве аргумента. А Activity – это подкласс Context, поэтому передача этого «трюка». Вот почему вы не можете сделать что-то подобное.

  TextView text = new TextView(); 

Теперь ответьте, почему мы это делаем. Подумайте так. Это точка зрения, которая должна быть привязана к некоторому контексту. Так что он также может потреблять многие связанные с контекстом привилегии в системе.

См. Контекст как индивидуально существующий обернутый компонент вашего приложения, который будет привязывать к нему так много вещей и имеет четко определенный жизненный цикл.

Активность – это тип контекста. Активность – это один видимый экран в приложении для Android. На самом деле активность намного больше. Но просто понять это на начальном уровне.

SetContentView говорит все это сам. Контент, который будет отображаться на видимом экране, к которому он принадлежит.

Таким образом, вы объявили TextView и задали его как содержимое отображаемой активности. Просто.

Надеюсь, это поможет лучше понять это. Вам следует лучше следовать http://developer.android.com

ура

Это относится к контексту. SetContentview используется для установки ресурса макета, для которого требуется целое число в качестве аргумента, а целое число относится к макету xml

Из документации

Элементы представления требуют, чтобы Контекст передавался конструктору, чтобы он имел доступ к ресурсу, например теме и тому подобному. Активность – это ребенок контекста, поэтому вы можете использовать это здесь.

SetContentView устанавливает элемент представления, который будет использоваться для отображения активности. Вы можете передать экземпляр элемента View или идентификатора ресурса.

Если он не существует (метод setContentView ()), вы никогда не узнаете, какой файл / код будет выполняться при запуске вашей активности.

Вы устанавливаете контекст с setContentView() метода setContentView() .